{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 18,
   "metadata": {},
   "outputs": [],
   "source": [
    "from tqdm import tqdm\n",
    "from hw2 import *\n",
    "from test import *"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_selim_time(carAccidentTuple, min_support):\n",
    "    len_of_data_set = len(carAccidentTuple)\n",
    "\n",
    "    time_beg = time.time()\n",
    "    relim_input = get_relim_input(carAccidentTuple)\n",
    "    item_sets = relim(relim_input, min_support=min_support*len_of_data_set)\n",
    "\n",
    "    time_end = time.time()\n",
    "    print('Time taken to find frequent patterns: ', time_end - time_beg)\n",
    "    print(\"# of freq itemsets:\", len(item_sets))\n",
    "    return time_end - time_beg"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_apriori_time(data_set, min_sup):\n",
    "    return test_apriori(data_set, min_sup=min_sup)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_fpgrowth_time(data_set, min_sup):\n",
    "    return test_fpgrowth(data_set, min_sup=min_sup)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_set = loadDataSet()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "cal_times = 10"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/13 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.08\n",
      "Create Ck time (s):  0.26390399999999997\n",
      "Generate Lk time (s):  22.634945000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.21083899999999997\n",
      "Generate Lk time (s):  19.942996\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.199372\n",
      "Generate Lk time (s):  19.8348\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.19564\n",
      "Generate Lk time (s):  20.171231\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.18996200000000002\n",
      "Generate Lk time (s):  20.379736\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.192724\n",
      "Generate Lk time (s):  20.608494\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.208248\n",
      "Generate Lk time (s):  20.29268\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.21109700000000003\n",
      "Generate Lk time (s):  20.320203\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.20168699999999998\n",
      "Generate Lk time (s):  20.473088\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.183676\n",
      "Generate Lk time (s):  19.541368\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "time_apriori_avg:  20.626275600000003\n",
      "minsup:  0.09\n",
      "Create Ck time (s):  0.17186400000000002\n",
      "Generate Lk time (s):  16.149070000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.167946\n",
      "Generate Lk time (s):  16.309053\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.188077\n",
      "Generate Lk time (s):  16.123922\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.175977\n",
      "Generate Lk time (s):  16.084017\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.16204000000000002\n",
      "Generate Lk time (s):  16.184960000000004\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.168031\n",
      "Generate Lk time (s):  16.026971\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.165081\n",
      "Generate Lk time (s):  16.109986999999997\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.17699800000000002\n",
      "Generate Lk time (s):  15.906970999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.170966\n",
      "Generate Lk time (s):  15.730251\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.16297500000000004\n",
      "Generate Lk time (s):  15.803064\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "time_apriori_avg:  16.214022500000002\n",
      "minsup:  0.09999999999999999\n",
      "Create Ck time (s):  0.163965\n",
      "Generate Lk time (s):  13.920997000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.17993299999999998\n",
      "Generate Lk time (s):  13.769104999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.172058\n",
      "Generate Lk time (s):  14.005901999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.15400000000000003\n",
      "Generate Lk time (s):  13.932038\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.15801\n",
      "Generate Lk time (s):  13.755970999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.15705800000000003\n",
      "Generate Lk time (s):  13.698961\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.15703199999999998\n",
      "Generate Lk time (s):  13.999931\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.162884\n",
      "Generate Lk time (s):  14.093387000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.166042\n",
      "Generate Lk time (s):  15.272193000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.175934\n",
      "Generate Lk time (s):  15.152654\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "time_apriori_avg:  14.324909600000002\n",
      "minsup:  0.10999999999999999\n",
      "Create Ck time (s):  0.16516900000000004\n",
      "Generate Lk time (s):  12.629578000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.168696\n",
      "Generate Lk time (s):  12.510058\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.16189100000000003\n",
      "Generate Lk time (s):  12.584007000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.21413200000000002\n",
      "Generate Lk time (s):  12.495883\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.169795\n",
      "Generate Lk time (s):  12.723143\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.16408\n",
      "Generate Lk time (s):  12.572349999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.17118\n",
      "Generate Lk time (s):  12.506556999999997\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.16681\n",
      "Generate Lk time (s):  12.351098\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.168176\n",
      "Generate Lk time (s):  12.513779999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.177251\n",
      "Generate Lk time (s):  12.270996\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "time_apriori_avg:  12.688861999999999\n",
      "minsup:  0.11999999999999998\n",
      "Create Ck time (s):  0.18017300000000003\n",
      "Generate Lk time (s):  11.082723000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.159832\n",
      "Generate Lk time (s):  10.857048\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.172941\n",
      "Generate Lk time (s):  11.221042\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.16659200000000002\n",
      "Generate Lk time (s):  10.900162000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.16835899999999998\n",
      "Generate Lk time (s):  11.243847\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.166499\n",
      "Generate Lk time (s):  10.967516\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.162222\n",
      "Generate Lk time (s):  11.230801000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.175459\n",
      "Generate Lk time (s):  11.243023\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.167106\n",
      "Generate Lk time (s):  11.219515000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.15985200000000002\n",
      "Generate Lk time (s):  11.102262\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "time_apriori_avg:  11.2750008\n",
      "minsup:  0.12999999999999998\n",
      "Create Ck time (s):  0.160998\n",
      "Generate Lk time (s):  10.112994\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.17092400000000002\n",
      "Generate Lk time (s):  9.938771999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.162056\n",
      "Generate Lk time (s):  10.082977000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.16515300000000002\n",
      "Generate Lk time (s):  10.481767\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.16216499999999998\n",
      "Generate Lk time (s):  10.013551000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.17058399999999999\n",
      "Generate Lk time (s):  10.166089\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.16395200000000001\n",
      "Generate Lk time (s):  10.009849\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.164945\n",
      "Generate Lk time (s):  10.083104000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.16487100000000002\n",
      "Generate Lk time (s):  10.033503\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.158487\n",
      "Generate Lk time (s):  9.925057\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "time_apriori_avg:  10.2492834\n",
      "minsup:  0.13999999999999996\n",
      "Create Ck time (s):  0.165006\n",
      "Generate Lk time (s):  8.522095\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.168985\n",
      "Generate Lk time (s):  8.674548\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.16447900000000001\n",
      "Generate Lk time (s):  8.648475999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.172825\n",
      "Generate Lk time (s):  8.568639000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.161146\n",
      "Generate Lk time (s):  8.411837\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.16296700000000003\n",
      "Generate Lk time (s):  8.481318\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.15683000000000002\n",
      "Generate Lk time (s):  8.801071\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.16181199999999998\n",
      "Generate Lk time (s):  8.568907000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.163005\n",
      "Generate Lk time (s):  8.786077999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.17419600000000002\n",
      "Generate Lk time (s):  8.652466\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "time_apriori_avg:  8.7772569\n",
      "minsup:  0.14999999999999997\n",
      "Create Ck time (s):  0.165274\n",
      "Generate Lk time (s):  8.419092\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.167035\n",
      "Generate Lk time (s):  8.414926\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.159275\n",
      "Generate Lk time (s):  8.334912000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.182646\n",
      "Generate Lk time (s):  8.503022\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.16426\n",
      "Generate Lk time (s):  8.408033000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.164981\n",
      "Generate Lk time (s):  8.505904\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.161415\n",
      "Generate Lk time (s):  8.370626\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.166921\n",
      "Generate Lk time (s):  8.408152000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.163904\n",
      "Generate Lk time (s):  8.604956999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.16412100000000002\n",
      "Generate Lk time (s):  8.350317999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "time_apriori_avg:  8.5980774\n",
      "minsup:  0.15999999999999998\n",
      "Create Ck time (s):  0.158555\n",
      "Generate Lk time (s):  6.380191000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.17591199999999999\n",
      "Generate Lk time (s):  6.625051\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.16298300000000002\n",
      "Generate Lk time (s):  6.3539840000000005\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.156289\n",
      "Generate Lk time (s):  6.398807000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.16685699999999998\n",
      "Generate Lk time (s):  6.406004\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.157837\n",
      "Generate Lk time (s):  6.399483000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.15559599999999998\n",
      "Generate Lk time (s):  6.426915999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.15432800000000002\n",
      "Generate Lk time (s):  6.357595\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.153863\n",
      "Generate Lk time (s):  6.306619\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.15484299999999998\n",
      "Generate Lk time (s):  6.671867\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "time_apriori_avg:  6.5925578\n",
      "minsup:  0.16999999999999996\n",
      "Create Ck time (s):  0.190973\n",
      "Generate Lk time (s):  6.267047\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.158095\n",
      "Generate Lk time (s):  6.066881\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.150686\n",
      "Generate Lk time (s):  6.007930000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.160975\n",
      "Generate Lk time (s):  5.955754\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.165764\n",
      "Generate Lk time (s):  5.899884\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.153446\n",
      "Generate Lk time (s):  5.848669\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.16321700000000003\n",
      "Generate Lk time (s):  5.848978000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.15191799999999997\n",
      "Generate Lk time (s):  5.946733999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.153685\n",
      "Generate Lk time (s):  5.863828000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.15887900000000002\n",
      "Generate Lk time (s):  6.000843\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "time_apriori_avg:  6.131818000000001\n",
      "minsup:  0.17999999999999994\n",
      "Create Ck time (s):  0.160913\n",
      "Generate Lk time (s):  5.434017000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.157014\n",
      "Generate Lk time (s):  5.468016\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.166624\n",
      "Generate Lk time (s):  5.415364\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.176036\n",
      "Generate Lk time (s):  5.567285\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.156743\n",
      "Generate Lk time (s):  5.571748\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.150036\n",
      "Generate Lk time (s):  5.142002\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.155962\n",
      "Generate Lk time (s):  5.157041\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.144957\n",
      "Generate Lk time (s):  5.562003\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.162997\n",
      "Generate Lk time (s):  5.238002\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.156003\n",
      "Generate Lk time (s):  5.2969990000000005\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "time_apriori_avg:  5.5442765000000005\n",
      "minsup:  0.18999999999999995\n",
      "Create Ck time (s):  0.145044\n",
      "Generate Lk time (s):  4.789956\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.181\n",
      "Generate Lk time (s):  4.914036000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.171024\n",
      "Generate Lk time (s):  4.872009\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.151931\n",
      "Generate Lk time (s):  4.714028999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.151007\n",
      "Generate Lk time (s):  4.785063\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.152973\n",
      "Generate Lk time (s):  4.727959\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.15013100000000001\n",
      "Generate Lk time (s):  4.756908999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.14500000000000002\n",
      "Generate Lk time (s):  4.774997000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.15000000000000002\n",
      "Generate Lk time (s):  4.684966\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.158992\n",
      "Generate Lk time (s):  4.693003999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "time_apriori_avg:  4.927206600000001\n",
      "minsup:  0.19999999999999996\n",
      "Create Ck time (s):  0.141033\n",
      "Generate Lk time (s):  4.414967\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.145967\n",
      "Generate Lk time (s):  4.395033000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.14396199999999998\n",
      "Generate Lk time (s):  4.418000999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.14499399999999998\n",
      "Generate Lk time (s):  4.295008999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.146931\n",
      "Generate Lk time (s):  4.323034\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.14397500000000002\n",
      "Generate Lk time (s):  4.348013999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.149972\n",
      "Generate Lk time (s):  4.375041\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.14796\n",
      "Generate Lk time (s):  4.437037\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.141997\n",
      "Generate Lk time (s):  4.346034\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/13 [21:44<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Create Ck time (s):  0.156924\n",
      "Generate Lk time (s):  4.331036\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "time_apriori_avg:  4.5147991\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_apriori = list(np.arange(0.08, 0.21, 0.01))\n",
    "time_apriori = []\n",
    "with tqdm(total=len(minsup_range_apriori)) as pbar:\n",
    "    for minsup in minsup_range_apriori:\n",
    "        print('minsup: ', minsup)\n",
    "        time_apriori_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_apriori_avg += get_apriori_time(data_set, min_sup=minsup)\n",
    "        time_apriori_avg /= cal_times\n",
    "        time_apriori.append(time_apriori_avg)\n",
    "        print('time_apriori_avg: ', time_apriori_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.01\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "time_fpgrowth_avg:  19.6367885\n",
      "minsup:  0.02\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "time_fpgrowth_avg:  14.932668000000001\n",
      "minsup:  0.03\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "time_fpgrowth_avg:  12.6280672\n",
      "minsup:  0.04\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "time_fpgrowth_avg:  10.1225065\n",
      "minsup:  0.05\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "time_fpgrowth_avg:  9.5880672\n",
      "minsup:  0.060000000000000005\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "time_fpgrowth_avg:  8.3324161\n",
      "minsup:  0.06999999999999999\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "time_fpgrowth_avg:  8.2660952\n",
      "minsup:  0.08\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "time_fpgrowth_avg:  6.598849999999999\n",
      "minsup:  0.09\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "time_fpgrowth_avg:  6.5580286999999995\n",
      "minsup:  0.09999999999999999\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "time_fpgrowth_avg:  7.125787900000001\n",
      "minsup:  0.11\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "time_fpgrowth_avg:  5.1811606\n",
      "minsup:  0.12\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "time_fpgrowth_avg:  5.711952800000001\n",
      "minsup:  0.13\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "time_fpgrowth_avg:  3.0224118\n",
      "minsup:  0.14\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "time_fpgrowth_avg:  2.8622073000000006\n",
      "minsup:  0.15000000000000002\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "time_fpgrowth_avg:  3.2673888000000004\n",
      "minsup:  0.16\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "time_fpgrowth_avg:  3.0038707\n",
      "minsup:  0.17\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "time_fpgrowth_avg:  3.0938821\n",
      "minsup:  0.18000000000000002\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "time_fpgrowth_avg:  3.4828347\n",
      "minsup:  0.19\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "time_fpgrowth_avg:  3.3821852\n",
      "minsup:  0.2\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [23:44<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "time_fpgrowth_avg:  5.6678964999999994\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_fpgrowth = list(np.arange(0.01, 0.21, 0.01))\n",
    "time_fpgrowth = []\n",
    "with tqdm(total=len(minsup_range_fpgrowth)) as pbar:\n",
    "    for minsup in minsup_range_fpgrowth:\n",
    "        print('minsup: ', minsup)\n",
    "        time_fpgrowth_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_fpgrowth_avg += get_fpgrowth_time(data_set, min_sup=minsup)\n",
    "        time_fpgrowth_avg /= cal_times\n",
    "        time_fpgrowth.append(time_fpgrowth_avg)\n",
    "        print('time_fpgrowth_avg: ', time_fpgrowth_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.01\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 7.05 seconds\n",
      "Time taken to find frequent patterns:  10.201927661895752\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 7.02 seconds\n",
      "Time taken to find frequent patterns:  10.134028911590576\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 6.74 seconds\n",
      "Time taken to find frequent patterns:  9.857995748519897\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 6.94 seconds\n",
      "Time taken to find frequent patterns:  10.061042547225952\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 6.88 seconds\n",
      "Time taken to find frequent patterns:  9.888000726699829\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.40 seconds\n",
      "Total time running relim: 6.90 seconds\n",
      "Time taken to find frequent patterns:  10.297078132629395\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 6.93 seconds\n",
      "Time taken to find frequent patterns:  10.020000219345093\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.30 seconds\n",
      "Total time running relim: 6.85 seconds\n",
      "Time taken to find frequent patterns:  10.15299367904663\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 6.88 seconds\n",
      "Time taken to find frequent patterns:  9.964027881622314\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 6.82 seconds\n",
      "Time taken to find frequent patterns:  9.889993667602539\n",
      "# of freq itemsets: 9733\n",
      "time_selim_avg:  10.046708917617797\n",
      "minsup:  0.02\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 5.09 seconds\n",
      "Time taken to find frequent patterns:  8.168933868408203\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 5.13 seconds\n",
      "Time taken to find frequent patterns:  8.175071477890015\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 5.05 seconds\n",
      "Time taken to find frequent patterns:  8.165926694869995\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 5.08 seconds\n",
      "Time taken to find frequent patterns:  8.160961389541626\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 5.03 seconds\n",
      "Time taken to find frequent patterns:  8.196782350540161\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 5.07 seconds\n",
      "Time taken to find frequent patterns:  8.319932460784912\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 5.16 seconds\n",
      "Time taken to find frequent patterns:  8.375068426132202\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 5.22 seconds\n",
      "Time taken to find frequent patterns:  8.427968978881836\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 5.27 seconds\n",
      "Time taken to find frequent patterns:  8.504063129425049\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 5.50 seconds\n",
      "Time taken to find frequent patterns:  8.611000537872314\n",
      "# of freq itemsets: 3588\n",
      "time_selim_avg:  8.310570931434631\n",
      "minsup:  0.03\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 4.23 seconds\n",
      "Time taken to find frequent patterns:  7.4659583568573\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 4.34 seconds\n",
      "Time taken to find frequent patterns:  7.545530557632446\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 4.32 seconds\n",
      "Time taken to find frequent patterns:  7.453999757766724\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.27 seconds\n",
      "Total time running relim: 4.35 seconds\n",
      "Time taken to find frequent patterns:  7.625069856643677\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 4.25 seconds\n",
      "Time taken to find frequent patterns:  7.488068103790283\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 4.38 seconds\n",
      "Time taken to find frequent patterns:  7.536041498184204\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.34 seconds\n",
      "Total time running relim: 4.34 seconds\n",
      "Time taken to find frequent patterns:  7.685970067977905\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 4.35 seconds\n",
      "Time taken to find frequent patterns:  7.560070991516113\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 4.30 seconds\n",
      "Time taken to find frequent patterns:  7.3519673347473145\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 4.27 seconds\n",
      "Time taken to find frequent patterns:  7.470999002456665\n",
      "# of freq itemsets: 1907\n",
      "time_selim_avg:  7.5183675527572635\n",
      "minsup:  0.04\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 3.56 seconds\n",
      "Time taken to find frequent patterns:  6.732001781463623\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 3.70 seconds\n",
      "Time taken to find frequent patterns:  6.7489540576934814\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 3.61 seconds\n",
      "Time taken to find frequent patterns:  6.835972547531128\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.26 seconds\n",
      "Total time running relim: 3.89 seconds\n",
      "Time taken to find frequent patterns:  7.157002925872803\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 3.64 seconds\n",
      "Time taken to find frequent patterns:  6.724003076553345\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 3.80 seconds\n",
      "Time taken to find frequent patterns:  6.890071153640747\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 3.64 seconds\n",
      "Time taken to find frequent patterns:  6.863999605178833\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 3.73 seconds\n",
      "Time taken to find frequent patterns:  6.782050848007202\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 3.70 seconds\n",
      "Time taken to find frequent patterns:  6.7310192584991455\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 3.71 seconds\n",
      "Time taken to find frequent patterns:  6.883038759231567\n",
      "# of freq itemsets: 1230\n",
      "time_selim_avg:  6.834811401367188\n",
      "minsup:  0.05\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 3.23 seconds\n",
      "Time taken to find frequent patterns:  6.25993800163269\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 3.35 seconds\n",
      "Time taken to find frequent patterns:  6.381930589675903\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 3.27 seconds\n",
      "Time taken to find frequent patterns:  6.350009441375732\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 3.26 seconds\n",
      "Time taken to find frequent patterns:  6.346001625061035\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 3.71 seconds\n",
      "Time taken to find frequent patterns:  6.781933546066284\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 3.25 seconds\n",
      "Time taken to find frequent patterns:  6.3839640617370605\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 3.42 seconds\n",
      "Time taken to find frequent patterns:  6.449069499969482\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 3.14 seconds\n",
      "Time taken to find frequent patterns:  6.261930704116821\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 3.34 seconds\n",
      "Time taken to find frequent patterns:  6.325933456420898\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 3.26 seconds\n",
      "Time taken to find frequent patterns:  6.460935354232788\n",
      "# of freq itemsets: 824\n",
      "time_selim_avg:  6.40016462802887\n",
      "minsup:  0.060000000000000005\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.80 seconds\n",
      "Time taken to find frequent patterns:  5.983004570007324\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.82 seconds\n",
      "Time taken to find frequent patterns:  5.909000873565674\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.86 seconds\n",
      "Time taken to find frequent patterns:  5.924036264419556\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.94 seconds\n",
      "Time taken to find frequent patterns:  6.115961790084839\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.85 seconds\n",
      "Time taken to find frequent patterns:  6.028999328613281\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 2.81 seconds\n",
      "Time taken to find frequent patterns:  5.9180378913879395\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.79 seconds\n",
      "Time taken to find frequent patterns:  5.945002555847168\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.89 seconds\n",
      "Time taken to find frequent patterns:  5.975060939788818\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 2.88 seconds\n",
      "Time taken to find frequent patterns:  5.880000829696655\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.91 seconds\n",
      "Time taken to find frequent patterns:  6.0670006275177\n",
      "# of freq itemsets: 603\n",
      "time_selim_avg:  5.9746105670928955\n",
      "minsup:  0.06999999999999999\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 2.63 seconds\n",
      "Time taken to find frequent patterns:  5.7450714111328125\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 2.49 seconds\n",
      "Time taken to find frequent patterns:  5.695931434631348\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 2.60 seconds\n",
      "Time taken to find frequent patterns:  5.646040439605713\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 2.56 seconds\n",
      "Time taken to find frequent patterns:  5.69300389289856\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 2.58 seconds\n",
      "Time taken to find frequent patterns:  5.667040109634399\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.65 seconds\n",
      "Time taken to find frequent patterns:  5.823771715164185\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.70 seconds\n",
      "Time taken to find frequent patterns:  5.7590343952178955\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 2.52 seconds\n",
      "Time taken to find frequent patterns:  5.738061904907227\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.70 seconds\n",
      "Time taken to find frequent patterns:  5.757049083709717\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.60 seconds\n",
      "Time taken to find frequent patterns:  5.682999849319458\n",
      "# of freq itemsets: 458\n",
      "time_selim_avg:  5.720800423622132\n",
      "minsup:  0.08\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.52 seconds\n",
      "Time taken to find frequent patterns:  5.700928688049316\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 2.45 seconds\n",
      "Time taken to find frequent patterns:  5.686995506286621\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.33 seconds\n",
      "Time taken to find frequent patterns:  5.509072303771973\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.30 seconds\n",
      "Total time running relim: 2.67 seconds\n",
      "Time taken to find frequent patterns:  5.9739990234375\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.37 seconds\n",
      "Time taken to find frequent patterns:  5.53599739074707\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 2.35 seconds\n",
      "Time taken to find frequent patterns:  5.566064357757568\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.48 seconds\n",
      "Time taken to find frequent patterns:  5.632031202316284\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.41 seconds\n",
      "Time taken to find frequent patterns:  5.551037788391113\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 2.74 seconds\n",
      "Time taken to find frequent patterns:  5.9590003490448\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 2.37 seconds\n",
      "Time taken to find frequent patterns:  5.582925796508789\n",
      "# of freq itemsets: 355\n",
      "time_selim_avg:  5.669805240631104\n",
      "minsup:  0.09\n",
      "Total time running get_relim_input: 3.27 seconds\n",
      "Total time running relim: 2.23 seconds\n",
      "Time taken to find frequent patterns:  5.498002052307129\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 2.27 seconds\n",
      "Time taken to find frequent patterns:  5.480818748474121\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.19 seconds\n",
      "Time taken to find frequent patterns:  5.360929489135742\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 2.23 seconds\n",
      "Time taken to find frequent patterns:  5.295969247817993\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 2.15 seconds\n",
      "Time taken to find frequent patterns:  5.262002468109131\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.25 seconds\n",
      "Time taken to find frequent patterns:  5.307998895645142\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 2.26 seconds\n",
      "Time taken to find frequent patterns:  5.44500207901001\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.22 seconds\n",
      "Time taken to find frequent patterns:  5.363940477371216\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.31 seconds\n",
      "Time taken to find frequent patterns:  5.472966909408569\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 2.20 seconds\n",
      "Time taken to find frequent patterns:  5.41797137260437\n",
      "# of freq itemsets: 286\n",
      "time_selim_avg:  5.390560173988343\n",
      "minsup:  0.09999999999999999\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.09 seconds\n",
      "Time taken to find frequent patterns:  5.151004076004028\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.13 seconds\n",
      "Time taken to find frequent patterns:  5.31499981880188\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.16 seconds\n",
      "Time taken to find frequent patterns:  5.22300124168396\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.06 seconds\n",
      "Time taken to find frequent patterns:  5.226964712142944\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.11 seconds\n",
      "Time taken to find frequent patterns:  5.2739973068237305\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 2.14 seconds\n",
      "Time taken to find frequent patterns:  5.216001987457275\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 2.01 seconds\n",
      "Time taken to find frequent patterns:  5.13200306892395\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 2.35 seconds\n",
      "Time taken to find frequent patterns:  5.386996746063232\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.18 seconds\n",
      "Time taken to find frequent patterns:  5.35602593421936\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.04 seconds\n",
      "Time taken to find frequent patterns:  5.193005084991455\n",
      "# of freq itemsets: 239\n",
      "time_selim_avg:  5.247399997711182\n",
      "minsup:  0.11\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.83 seconds\n",
      "Time taken to find frequent patterns:  4.807058811187744\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.97 seconds\n",
      "Time taken to find frequent patterns:  5.054062128067017\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 1.91 seconds\n",
      "Time taken to find frequent patterns:  5.079047203063965\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.86 seconds\n",
      "Time taken to find frequent patterns:  4.955028057098389\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.91 seconds\n",
      "Time taken to find frequent patterns:  5.00192666053772\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.94 seconds\n",
      "Time taken to find frequent patterns:  5.048972129821777\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.91 seconds\n",
      "Time taken to find frequent patterns:  4.972928285598755\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.85 seconds\n",
      "Time taken to find frequent patterns:  4.960042715072632\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 1.84 seconds\n",
      "Time taken to find frequent patterns:  4.976999282836914\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.95 seconds\n",
      "Time taken to find frequent patterns:  4.951068162918091\n",
      "# of freq itemsets: 184\n",
      "time_selim_avg:  4.9807133436203\n",
      "minsup:  0.12\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 1.71 seconds\n",
      "Time taken to find frequent patterns:  4.859997510910034\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.36 seconds\n",
      "Total time running relim: 2.01 seconds\n",
      "Time taken to find frequent patterns:  5.364964246749878\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.79 seconds\n",
      "Time taken to find frequent patterns:  4.916066646575928\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.85 seconds\n",
      "Time taken to find frequent patterns:  4.927969932556152\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.69 seconds\n",
      "Time taken to find frequent patterns:  4.78900671005249\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.81 seconds\n",
      "Time taken to find frequent patterns:  4.900042533874512\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.80 seconds\n",
      "Time taken to find frequent patterns:  4.785001754760742\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.80 seconds\n",
      "Time taken to find frequent patterns:  4.891010284423828\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.79 seconds\n",
      "Time taken to find frequent patterns:  4.883974552154541\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.74 seconds\n",
      "Time taken to find frequent patterns:  4.735001087188721\n",
      "# of freq itemsets: 167\n",
      "time_selim_avg:  4.905303525924682\n",
      "minsup:  0.13\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.66 seconds\n",
      "Time taken to find frequent patterns:  4.76800274848938\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.69 seconds\n",
      "Time taken to find frequent patterns:  4.783938884735107\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 1.64 seconds\n",
      "Time taken to find frequent patterns:  4.805060863494873\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.68 seconds\n",
      "Time taken to find frequent patterns:  4.6889917850494385\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.71 seconds\n",
      "Time taken to find frequent patterns:  4.738062143325806\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.67699670791626\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.69 seconds\n",
      "Time taken to find frequent patterns:  4.768928050994873\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.65 seconds\n",
      "Time taken to find frequent patterns:  4.748992919921875\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 1.84 seconds\n",
      "Time taken to find frequent patterns:  4.990067720413208\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.66 seconds\n",
      "Time taken to find frequent patterns:  4.782061338424683\n",
      "# of freq itemsets: 143\n",
      "time_selim_avg:  4.7751103162765505\n",
      "minsup:  0.14\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.685065507888794\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.56 seconds\n",
      "Time taken to find frequent patterns:  4.654007196426392\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.569933652877808\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 1.60 seconds\n",
      "Time taken to find frequent patterns:  4.753025770187378\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.4949951171875\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.54 seconds\n",
      "Time taken to find frequent patterns:  4.567963600158691\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.54 seconds\n",
      "Time taken to find frequent patterns:  4.581027507781982\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.50 seconds\n",
      "Time taken to find frequent patterns:  4.527929067611694\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.49 seconds\n",
      "Time taken to find frequent patterns:  4.605973482131958\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.609999656677246\n",
      "# of freq itemsets: 123\n",
      "time_selim_avg:  4.604992055892945\n",
      "minsup:  0.15000000000000002\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.63 seconds\n",
      "Time taken to find frequent patterns:  4.721968173980713\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.63 seconds\n",
      "Time taken to find frequent patterns:  4.707986116409302\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.499931335449219\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.53 seconds\n",
      "Time taken to find frequent patterns:  4.577000617980957\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.47 seconds\n",
      "Time taken to find frequent patterns:  4.5399487018585205\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 1.76 seconds\n",
      "Time taken to find frequent patterns:  4.902058124542236\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.54 seconds\n",
      "Time taken to find frequent patterns:  4.666931390762329\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.52 seconds\n",
      "Time taken to find frequent patterns:  4.600976467132568\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.56 seconds\n",
      "Time taken to find frequent patterns:  4.615041732788086\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.518983840942383\n",
      "# of freq itemsets: 110\n",
      "time_selim_avg:  4.635082650184631\n",
      "minsup:  0.16\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.35 seconds\n",
      "Time taken to find frequent patterns:  4.327049732208252\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.28 seconds\n",
      "Time taken to find frequent patterns:  4.297060966491699\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 1.32 seconds\n",
      "Time taken to find frequent patterns:  4.4790709018707275\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.417001008987427\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 1.53 seconds\n",
      "Time taken to find frequent patterns:  4.709038019180298\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.30 seconds\n",
      "Time taken to find frequent patterns:  4.326007843017578\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.31 seconds\n",
      "Time taken to find frequent patterns:  4.350000858306885\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.31 seconds\n",
      "Time taken to find frequent patterns:  4.342991590499878\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.39 seconds\n",
      "Time taken to find frequent patterns:  4.514002323150635\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.28 seconds\n",
      "Time taken to find frequent patterns:  4.386989116668701\n",
      "# of freq itemsets: 88\n",
      "time_selim_avg:  4.414921236038208\n",
      "minsup:  0.17\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.27 seconds\n",
      "Time taken to find frequent patterns:  4.387040376663208\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.326939582824707\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.406976222991943\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.372940540313721\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.19 seconds\n",
      "Time taken to find frequent patterns:  4.311002254486084\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.26 seconds\n",
      "Time taken to find frequent patterns:  4.263993740081787\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.26 seconds\n",
      "Time taken to find frequent patterns:  4.258930683135986\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.22 seconds\n",
      "Time taken to find frequent patterns:  4.2179412841796875\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.31 seconds\n",
      "Time taken to find frequent patterns:  4.2920002937316895\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.21 seconds\n",
      "Time taken to find frequent patterns:  4.244028806686401\n",
      "# of freq itemsets: 82\n",
      "time_selim_avg:  4.3081793785095215\n",
      "minsup:  0.18000000000000002\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.26 seconds\n",
      "Time taken to find frequent patterns:  4.287998914718628\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.16 seconds\n",
      "Time taken to find frequent patterns:  4.191003322601318\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 1.24 seconds\n",
      "Time taken to find frequent patterns:  4.379020690917969\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.17 seconds\n",
      "Time taken to find frequent patterns:  4.231958627700806\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.252975225448608\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.22 seconds\n",
      "Time taken to find frequent patterns:  4.303998947143555\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 1.17 seconds\n",
      "Time taken to find frequent patterns:  4.315941333770752\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 1.12 seconds\n",
      "Time taken to find frequent patterns:  4.280062198638916\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.26 seconds\n",
      "Time taken to find frequent patterns:  4.37893009185791\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.17 seconds\n",
      "Time taken to find frequent patterns:  4.181061029434204\n",
      "# of freq itemsets: 72\n",
      "time_selim_avg:  4.280295038223267\n",
      "minsup:  0.19\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.32 seconds\n",
      "Time taken to find frequent patterns:  4.44704008102417\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.28 seconds\n",
      "Total time running relim: 1.10 seconds\n",
      "Time taken to find frequent patterns:  4.380071401596069\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.15 seconds\n",
      "Time taken to find frequent patterns:  4.203022480010986\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.12 seconds\n",
      "Time taken to find frequent patterns:  4.1650238037109375\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.14 seconds\n",
      "Time taken to find frequent patterns:  4.1740007400512695\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.16 seconds\n",
      "Time taken to find frequent patterns:  4.254998207092285\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 1.16 seconds\n",
      "Time taken to find frequent patterns:  4.31101131439209\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 1.08 seconds\n",
      "Time taken to find frequent patterns:  4.312058925628662\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.14 seconds\n",
      "Time taken to find frequent patterns:  4.175956726074219\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.18 seconds\n",
      "Time taken to find frequent patterns:  4.252999544143677\n",
      "# of freq itemsets: 64\n",
      "time_selim_avg:  4.267618322372437\n",
      "minsup:  0.2\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.08 seconds\n",
      "Time taken to find frequent patterns:  4.068992614746094\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 1.11 seconds\n",
      "Time taken to find frequent patterns:  4.264028072357178\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 1.05 seconds\n",
      "Time taken to find frequent patterns:  4.211994647979736\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 1.02 seconds\n",
      "Time taken to find frequent patterns:  4.21000599861145\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.07 seconds\n",
      "Time taken to find frequent patterns:  4.129995346069336\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.05 seconds\n",
      "Time taken to find frequent patterns:  4.1250691413879395\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.10 seconds\n",
      "Time taken to find frequent patterns:  4.181959629058838\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.00 seconds\n",
      "Time taken to find frequent patterns:  4.122947931289673\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.11 seconds\n",
      "Time taken to find frequent patterns:  4.1830620765686035\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.00 seconds\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [39:16<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total time running relim: 1.06 seconds\n",
      "Time taken to find frequent patterns:  4.065001726150513\n",
      "# of freq itemsets: 58\n",
      "time_selim_avg:  4.156305718421936\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_selim = list(np.arange(0.01, 0.21, 0.01))\n",
    "time_selim = []\n",
    "with tqdm(total=len(minsup_range_selim)) as pbar:\n",
    "    for minsup in minsup_range_selim:\n",
    "        print('minsup: ', minsup)\n",
    "        time_selim_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_selim_avg += get_selim_time(data_set, min_support=minsup)\n",
    "        time_selim_avg /= cal_times\n",
    "        time_selim.append(time_selim_avg)\n",
    "        print('time_selim_avg: ', time_selim_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 31,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[20.626275600000003, 16.214022500000002, 14.324909600000002, 12.688861999999999, 11.2750008, 10.2492834, 8.7772569, 8.5980774, 6.5925578, 6.131818000000001, 5.5442765000000005, 4.927206600000001, 4.5147991]\n",
      "[19.6367885, 14.932668000000001, 12.6280672, 10.1225065, 9.5880672, 8.3324161, 8.2660952, 6.598849999999999, 6.5580286999999995, 7.125787900000001, 5.1811606, 5.711952800000001, 3.0224118, 2.8622073000000006, 3.2673888000000004, 3.0038707, 3.0938821, 3.4828347, 3.3821852, 5.6678964999999994]\n",
      "[10.046708917617797, 8.310570931434631, 7.5183675527572635, 6.834811401367188, 6.40016462802887, 5.9746105670928955, 5.720800423622132, 5.669805240631104, 5.390560173988343, 5.247399997711182, 4.9807133436203, 4.905303525924682, 4.7751103162765505, 4.604992055892945, 4.635082650184631, 4.414921236038208, 4.3081793785095215, 4.280295038223267, 4.267618322372437, 4.156305718421936]\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAwkAAAIECAYAAABScmLmAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAA9hAAAPYQGoP6dpAACNlklEQVR4nOzddZhc5d3G8e8zs+67sc3G3YW4EIMAgWDFggQI2gJFKkAptKW0fdtSSosXCRIIToGEYCUQSIC4u7vLuu887x9nd7ObZJNNVs7I/bmuc82Zc86c+W1Kd+eex4y1FhERERERkTIetwsQERERERH/opAgIiIiIiKVKCSIiIiIiEglCgkiIiIiIlKJQoKIiIiIiFSikCAiIiIiIpUoJIiIiIiISCUKCSIiIiIiUkmY2wX4I2OMAdKALLdrERERERGpZfHATnucVZUVEo4tDdjudhEiIiIiInWkObCjqpMKCceWBbBt2zYSEhLcrkVEREREpFZkZmbSokULOEGPGYWE40hISFBIEBEREZGQo4HLIiIiIiJSiUKCiIiIiIhUopAgIiIiIiKVaEyCiIiISIgpKSmhqKjI7TKkDni9XsLCwnBm9D91CgkiIiIiISQ7O5vt27dznCnyJcDFxMTQtGlTIiIiTvkeCgkiIiIiIaKkpITt27cTExNDo0aNavxts/gXay2FhYXs27ePTZs20aFDBzyeUxtdoJAgIiIiEiKKioqw1tKoUSOio6PdLkfqQHR0NOHh4WzZsoXCwkKioqJO6T4auCwiIiISYtSCENxOtfWg0j1qoQ4REREREQkiCgkiIiIiIlKJQoKIiIiIhKwJEyZw8cUX1/g+Dz/8ML17967xffyFQoKIiIiIBIQff/wRr9fL2LFja+2eTzzxBK+++mqN7/PrX/+a6dOn17wgP6GQICIiIiIBYeLEidx5551899137Ny5s0b3KikpwefzkZiYSFJS0infx1pLcXExcXFxNGjQoEY1+ROFBBEREZEQZa0lt7DYle1kF3PLzs7mnXfe4bbbbmPs2LGVvv2fMWMGxhimTZtGz549iYqKYtCgQSxfvrz8mldffZWkpCSmTJlC165diYyMZOvWrUd1NyooKOCuu+6icePGREVFcfrppzNv3ryj3uuzzz6jb9++REZGMmvWrKDrbqR1EkRERERCVF5RCV1//4Ur773ykXOI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",
      "text/plain": [
       "<Figure size 900x600 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "print(time_apriori)\n",
    "print(time_fpgrowth)\n",
    "print(time_selim)\n",
    "plt.figure(figsize=(9, 6), dpi=100)\n",
    "plt.plot(minsup_range_apriori[:-1], time_apriori[:-1], label=\"Apriori\")\n",
    "plt.plot(minsup_range_fpgrowth[:-1], time_fpgrowth[:-1], label=\"FP-Growth\")\n",
    "plt.plot(minsup_range_selim[:-1], time_selim[:-1], label=\"Selim\")\n",
    "plt.xlabel(\"Minimum Support\")\n",
    "plt.ylabel(\"Time (s)\")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 36,
   "metadata": {},
   "outputs": [],
   "source": [
    "import csv\n",
    "dataset_name_2 = 'pokemon_alopez247.csv'\n",
    "with open(dataset_name_2, 'r', encoding='utf8') as f:\n",
    "    reader = csv.reader(f)\n",
    "    data = list(reader)\n",
    "data = data[1:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 37,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/13 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.08\n",
      "Create Ck time (s):  0.26395\n",
      "Generate Lk time (s):  18.981087\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.19902699999999998\n",
      "Generate Lk time (s):  18.976001\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.18489499999999998\n",
      "Generate Lk time (s):  19.536117\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.18701399999999999\n",
      "Generate Lk time (s):  18.231994999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.19008\n",
      "Generate Lk time (s):  18.852894\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.182065\n",
      "Generate Lk time (s):  18.465933\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.17632400000000004\n",
      "Generate Lk time (s):  18.663294999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.177459\n",
      "Generate Lk time (s):  18.803884\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.178938\n",
      "Generate Lk time (s):  18.596446\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.193333\n",
      "Generate Lk time (s):  18.532614999999996\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "time_apriori_avg:  18.957833\n",
      "minsup:  0.09\n",
      "Create Ck time (s):  0.166784\n",
      "Generate Lk time (s):  16.038151\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.16695299999999996\n",
      "Generate Lk time (s):  15.892282000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.170496\n",
      "Generate Lk time (s):  16.451847\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.16910999999999998\n",
      "Generate Lk time (s):  15.992467000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.177376\n",
      "Generate Lk time (s):  16.088905999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.17353100000000002\n",
      "Generate Lk time (s):  15.907879999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.17228400000000002\n",
      "Generate Lk time (s):  15.923706999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.17072\n",
      "Generate Lk time (s):  15.988800000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.174437\n",
      "Generate Lk time (s):  16.043137\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.176634\n",
      "Generate Lk time (s):  15.938704999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "time_apriori_avg:  16.1991812\n",
      "minsup:  0.09999999999999999\n",
      "Create Ck time (s):  0.164872\n",
      "Generate Lk time (s):  13.944841\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.16482599999999997\n",
      "Generate Lk time (s):  13.951223\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.169222\n",
      "Generate Lk time (s):  13.971981\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.163421\n",
      "Generate Lk time (s):  13.931816999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.15689\n",
      "Generate Lk time (s):  14.045289000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.15527600000000003\n",
      "Generate Lk time (s):  13.952565\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.171639\n",
      "Generate Lk time (s):  14.045984\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.17032499999999998\n",
      "Generate Lk time (s):  14.120901000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.162034\n",
      "Generate Lk time (s):  14.005052999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.157026\n",
      "Generate Lk time (s):  14.009958000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "time_apriori_avg:  14.162310000000002\n",
      "minsup:  0.10999999999999999\n",
      "Create Ck time (s):  0.149105\n",
      "Generate Lk time (s):  11.549348\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.169301\n",
      "Generate Lk time (s):  11.377166999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.1604\n",
      "Generate Lk time (s):  11.303862999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.161834\n",
      "Generate Lk time (s):  11.414472000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.155576\n",
      "Generate Lk time (s):  11.510584999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.151991\n",
      "Generate Lk time (s):  11.292936\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.16353199999999998\n",
      "Generate Lk time (s):  11.510348\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.15887099999999998\n",
      "Generate Lk time (s):  11.396190999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.17296\n",
      "Generate Lk time (s):  11.405912\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.160922\n",
      "Generate Lk time (s):  11.440082\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "time_apriori_avg:  11.580839700000002\n",
      "minsup:  0.11999999999999998\n",
      "Create Ck time (s):  0.15080400000000002\n",
      "Generate Lk time (s):  10.344462\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.15682200000000002\n",
      "Generate Lk time (s):  10.238951\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.181\n",
      "Generate Lk time (s):  10.314283\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.15672799999999998\n",
      "Generate Lk time (s):  10.137808\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.168286\n",
      "Generate Lk time (s):  10.203513\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.16097\n",
      "Generate Lk time (s):  10.214308\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.16105299999999997\n",
      "Generate Lk time (s):  10.217158\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.156442\n",
      "Generate Lk time (s):  10.258576999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.149581\n",
      "Generate Lk time (s):  10.722986\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.15894100000000003\n",
      "Generate Lk time (s):  10.473031\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "time_apriori_avg:  10.472966000000001\n",
      "minsup:  0.12999999999999998\n",
      "Create Ck time (s):  0.15102500000000002\n",
      "Generate Lk time (s):  9.029974999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.159025\n",
      "Generate Lk time (s):  9.015179000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.145993\n",
      "Generate Lk time (s):  9.071972999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.156098\n",
      "Generate Lk time (s):  9.112476999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.152781\n",
      "Generate Lk time (s):  9.317555\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.159063\n",
      "Generate Lk time (s):  9.636939\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.153966\n",
      "Generate Lk time (s):  9.206\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.152997\n",
      "Generate Lk time (s):  9.224002\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.154043\n",
      "Generate Lk time (s):  9.322000000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.14403200000000002\n",
      "Generate Lk time (s):  9.234820999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "time_apriori_avg:  9.370595500000002\n",
      "minsup:  0.13999999999999996\n",
      "Create Ck time (s):  0.159214\n",
      "Generate Lk time (s):  7.949363000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.146773\n",
      "Generate Lk time (s):  8.273964\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.147629\n",
      "Generate Lk time (s):  8.969659000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.157137\n",
      "Generate Lk time (s):  8.24258\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.150483\n",
      "Generate Lk time (s):  7.829156\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.146003\n",
      "Generate Lk time (s):  7.784994\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.146042\n",
      "Generate Lk time (s):  9.016233\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.14804\n",
      "Generate Lk time (s):  7.98196\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.152117\n",
      "Generate Lk time (s):  9.258887999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.172995\n",
      "Generate Lk time (s):  12.484616999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "time_apriori_avg:  8.9321835\n",
      "minsup:  0.14999999999999997\n",
      "Create Ck time (s):  0.214999\n",
      "Generate Lk time (s):  12.298996\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.171969\n",
      "Generate Lk time (s):  9.345992\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.29200299999999996\n",
      "Generate Lk time (s):  9.252997\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.218999\n",
      "Generate Lk time (s):  14.164619\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.287026\n",
      "Generate Lk time (s):  9.556681\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.151881\n",
      "Generate Lk time (s):  7.925104\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.153071\n",
      "Generate Lk time (s):  7.889983\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.14805300000000002\n",
      "Generate Lk time (s):  7.9138969999999995\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.146003\n",
      "Generate Lk time (s):  8.012395999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.166967\n",
      "Generate Lk time (s):  7.909059\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "time_apriori_avg:  9.6227652\n",
      "minsup:  0.15999999999999998\n",
      "Create Ck time (s):  0.144002\n",
      "Generate Lk time (s):  5.958937000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.185\n",
      "Generate Lk time (s):  5.8639980000000005\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.153968\n",
      "Generate Lk time (s):  6.116061999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.147974\n",
      "Generate Lk time (s):  5.900058\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.142904\n",
      "Generate Lk time (s):  5.963077\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.150996\n",
      "Generate Lk time (s):  5.933002999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.148987\n",
      "Generate Lk time (s):  5.9829740000000005\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.15804500000000002\n",
      "Generate Lk time (s):  6.102956000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.152001\n",
      "Generate Lk time (s):  6.001035000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.144\n",
      "Generate Lk time (s):  5.925003\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "time_apriori_avg:  6.1277981\n",
      "minsup:  0.16999999999999996\n",
      "Create Ck time (s):  0.151992\n",
      "Generate Lk time (s):  5.626003000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.160042\n",
      "Generate Lk time (s):  5.554394000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.151062\n",
      "Generate Lk time (s):  5.618373\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.153001\n",
      "Generate Lk time (s):  5.739001999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.14404\n",
      "Generate Lk time (s):  5.618960999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.14906799999999998\n",
      "Generate Lk time (s):  5.59393\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.162997\n",
      "Generate Lk time (s):  5.86185\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.155492\n",
      "Generate Lk time (s):  5.635679\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.154008\n",
      "Generate Lk time (s):  5.638948\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.15202100000000002\n",
      "Generate Lk time (s):  5.506961\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "time_apriori_avg:  5.7928823000000005\n",
      "minsup:  0.17999999999999994\n",
      "Create Ck time (s):  0.145997\n",
      "Generate Lk time (s):  5.263039000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.151968\n",
      "Generate Lk time (s):  5.2199979999999995\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.145038\n",
      "Generate Lk time (s):  5.131996999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.153067\n",
      "Generate Lk time (s):  5.216965\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.155006\n",
      "Generate Lk time (s):  5.131994000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.16298\n",
      "Generate Lk time (s):  5.478021\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.14399800000000001\n",
      "Generate Lk time (s):  5.110032000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.148011\n",
      "Generate Lk time (s):  5.077994\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.145921\n",
      "Generate Lk time (s):  5.192041000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.151001\n",
      "Generate Lk time (s):  5.256986999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "time_apriori_avg:  5.3585063\n",
      "minsup:  0.18999999999999995\n",
      "Create Ck time (s):  0.15489999999999998\n",
      "Generate Lk time (s):  4.713143\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.148034\n",
      "Generate Lk time (s):  4.715927999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.160039\n",
      "Generate Lk time (s):  4.892962\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.148007\n",
      "Generate Lk time (s):  4.910017000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.155001\n",
      "Generate Lk time (s):  4.830963999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.143034\n",
      "Generate Lk time (s):  4.776001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.154965\n",
      "Generate Lk time (s):  4.832997000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.176336\n",
      "Generate Lk time (s):  4.787999999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.14199699999999998\n",
      "Generate Lk time (s):  4.7170369999999995\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.16097\n",
      "Generate Lk time (s):  4.766993\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "time_apriori_avg:  4.9490306\n",
      "minsup:  0.19999999999999996\n",
      "Create Ck time (s):  0.15410400000000002\n",
      "Generate Lk time (s):  4.473933\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.147017\n",
      "Generate Lk time (s):  4.4879500000000005\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.142996\n",
      "Generate Lk time (s):  4.682553\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.148998\n",
      "Generate Lk time (s):  4.58206\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.149005\n",
      "Generate Lk time (s):  4.422336\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.150035\n",
      "Generate Lk time (s):  4.592007000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.142997\n",
      "Generate Lk time (s):  4.471961\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.14204499999999998\n",
      "Generate Lk time (s):  4.547954\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.143002\n",
      "Generate Lk time (s):  4.463007\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/13 [21:01<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Create Ck time (s):  0.143011\n",
      "Generate Lk time (s):  4.450989\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "time_apriori_avg:  4.664095099999999\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_apriori = list(np.arange(0.08, 0.21, 0.01))\n",
    "time_apriori = []\n",
    "with tqdm(total=len(minsup_range_apriori)) as pbar:\n",
    "    for minsup in minsup_range_apriori:\n",
    "        print('minsup: ', minsup)\n",
    "        time_apriori_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_apriori_avg += get_apriori_time(data_set, min_sup=minsup)\n",
    "        time_apriori_avg /= cal_times\n",
    "        time_apriori.append(time_apriori_avg)\n",
    "        print('time_apriori_avg: ', time_apriori_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.01\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "time_fpgrowth_avg:  18.825123499999997\n",
      "minsup:  0.02\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "time_fpgrowth_avg:  13.3884043\n",
      "minsup:  0.03\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "time_fpgrowth_avg:  11.237117600000001\n",
      "minsup:  0.04\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "time_fpgrowth_avg:  9.879805399999999\n",
      "minsup:  0.05\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "time_fpgrowth_avg:  8.540507000000002\n",
      "minsup:  0.060000000000000005\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "time_fpgrowth_avg:  8.141369899999999\n",
      "minsup:  0.06999999999999999\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "time_fpgrowth_avg:  8.486933500000001\n",
      "minsup:  0.08\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "time_fpgrowth_avg:  6.690678\n",
      "minsup:  0.09\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "time_fpgrowth_avg:  6.174213999999999\n",
      "minsup:  0.09999999999999999\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "time_fpgrowth_avg:  6.487300100000001\n",
      "minsup:  0.11\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "time_fpgrowth_avg:  4.8704965\n",
      "minsup:  0.12\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "time_fpgrowth_avg:  5.2750936\n",
      "minsup:  0.13\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "time_fpgrowth_avg:  3.0695968000000002\n",
      "minsup:  0.14\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "time_fpgrowth_avg:  2.7768595\n",
      "minsup:  0.15000000000000002\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "time_fpgrowth_avg:  3.1996479\n",
      "minsup:  0.16\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "time_fpgrowth_avg:  3.1787002\n",
      "minsup:  0.17\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "time_fpgrowth_avg:  2.9792596\n",
      "minsup:  0.18000000000000002\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "time_fpgrowth_avg:  3.4582451999999995\n",
      "minsup:  0.19\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "time_fpgrowth_avg:  3.2616321\n",
      "minsup:  0.2\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [22:30<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "time_fpgrowth_avg:  5.1362562\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_fpgrowth = list(np.arange(0.01, 0.21, 0.01))\n",
    "time_fpgrowth = []\n",
    "with tqdm(total=len(minsup_range_fpgrowth)) as pbar:\n",
    "    for minsup in minsup_range_fpgrowth:\n",
    "        print('minsup: ', minsup)\n",
    "        time_fpgrowth_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_fpgrowth_avg += get_fpgrowth_time(data_set, min_sup=minsup)\n",
    "        time_fpgrowth_avg /= cal_times\n",
    "        time_fpgrowth.append(time_fpgrowth_avg)\n",
    "        print('time_fpgrowth_avg: ', time_fpgrowth_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 39,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.01\n",
      "Total time running get_relim_input: 3.37 seconds\n",
      "Total time running relim: 6.48 seconds\n",
      "Time taken to find frequent patterns:  9.857069492340088\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 6.67 seconds\n",
      "Time taken to find frequent patterns:  9.825955152511597\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 6.70 seconds\n",
      "Time taken to find frequent patterns:  9.886001825332642\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 6.86 seconds\n",
      "Time taken to find frequent patterns:  10.077040433883667\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 6.78 seconds\n",
      "Time taken to find frequent patterns:  10.064003229141235\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.30 seconds\n",
      "Total time running relim: 6.63 seconds\n",
      "Time taken to find frequent patterns:  9.932002305984497\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.48 seconds\n",
      "Total time running relim: 6.72 seconds\n",
      "Time taken to find frequent patterns:  10.196033477783203\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 6.73 seconds\n",
      "Time taken to find frequent patterns:  9.87299919128418\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.26 seconds\n",
      "Total time running relim: 6.78 seconds\n",
      "Time taken to find frequent patterns:  10.046002388000488\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 6.73 seconds\n",
      "Time taken to find frequent patterns:  9.834930896759033\n",
      "# of freq itemsets: 9733\n",
      "time_selim_avg:  9.959203839302063\n",
      "minsup:  0.02\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 4.88 seconds\n",
      "Time taken to find frequent patterns:  8.100060224533081\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 4.94 seconds\n",
      "Time taken to find frequent patterns:  8.229002475738525\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 4.98 seconds\n",
      "Time taken to find frequent patterns:  8.162004232406616\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.28 seconds\n",
      "Total time running relim: 5.07 seconds\n",
      "Time taken to find frequent patterns:  8.346001148223877\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 4.98 seconds\n",
      "Time taken to find frequent patterns:  8.26493239402771\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 5.02 seconds\n",
      "Time taken to find frequent patterns:  8.081970691680908\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.38 seconds\n",
      "Total time running relim: 5.14 seconds\n",
      "Time taken to find frequent patterns:  8.521018266677856\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.31 seconds\n",
      "Total time running relim: 4.92 seconds\n",
      "Time taken to find frequent patterns:  8.232933044433594\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 5.50 seconds\n",
      "Time taken to find frequent patterns:  8.749752044677734\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 5.73 seconds\n",
      "Time taken to find frequent patterns:  8.896504640579224\n",
      "# of freq itemsets: 3588\n",
      "time_selim_avg:  8.358417916297913\n",
      "minsup:  0.03\n",
      "Total time running get_relim_input: 3.33 seconds\n",
      "Total time running relim: 4.46 seconds\n",
      "Time taken to find frequent patterns:  7.78404688835144\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.33 seconds\n",
      "Total time running relim: 4.63 seconds\n",
      "Time taken to find frequent patterns:  7.956259489059448\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 4.17 seconds\n",
      "Time taken to find frequent patterns:  7.317286252975464\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.27 seconds\n",
      "Total time running relim: 4.13 seconds\n",
      "Time taken to find frequent patterns:  7.408768653869629\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 3.99 seconds\n",
      "Time taken to find frequent patterns:  7.178931951522827\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 4.24 seconds\n",
      "Time taken to find frequent patterns:  7.432018041610718\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 4.16 seconds\n",
      "Time taken to find frequent patterns:  7.290964603424072\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.41 seconds\n",
      "Total time running relim: 4.04 seconds\n",
      "Time taken to find frequent patterns:  7.449002027511597\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 4.11 seconds\n",
      "Time taken to find frequent patterns:  7.344072580337524\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 4.16 seconds\n",
      "Time taken to find frequent patterns:  7.375002384185791\n",
      "# of freq itemsets: 1907\n",
      "time_selim_avg:  7.453635287284851\n",
      "minsup:  0.04\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 3.49 seconds\n",
      "Time taken to find frequent patterns:  6.782039403915405\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.26 seconds\n",
      "Total time running relim: 3.49 seconds\n",
      "Time taken to find frequent patterns:  6.746934175491333\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.28 seconds\n",
      "Total time running relim: 3.51 seconds\n",
      "Time taken to find frequent patterns:  6.792067050933838\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 3.61 seconds\n",
      "Time taken to find frequent patterns:  6.675005197525024\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 3.60 seconds\n",
      "Time taken to find frequent patterns:  6.849967956542969\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.41 seconds\n",
      "Total time running relim: 3.45 seconds\n",
      "Time taken to find frequent patterns:  6.855997323989868\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 3.97 seconds\n",
      "Time taken to find frequent patterns:  7.185076713562012\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 4.02 seconds\n",
      "Time taken to find frequent patterns:  7.2372729778289795\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 4.06 seconds\n",
      "Time taken to find frequent patterns:  7.2825188636779785\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.40 seconds\n",
      "Total time running relim: 3.95 seconds\n",
      "Time taken to find frequent patterns:  7.344990968704224\n",
      "# of freq itemsets: 1230\n",
      "time_selim_avg:  6.975187063217163\n",
      "minsup:  0.05\n",
      "Total time running get_relim_input: 3.27 seconds\n",
      "Total time running relim: 3.51 seconds\n",
      "Time taken to find frequent patterns:  6.781010150909424\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 3.51 seconds\n",
      "Time taken to find frequent patterns:  6.657008409500122\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.28 seconds\n",
      "Total time running relim: 3.15 seconds\n",
      "Time taken to find frequent patterns:  6.434498310089111\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 3.21 seconds\n",
      "Time taken to find frequent patterns:  6.34505295753479\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 3.13 seconds\n",
      "Time taken to find frequent patterns:  6.346000909805298\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 3.11 seconds\n",
      "Time taken to find frequent patterns:  6.23505711555481\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 3.15 seconds\n",
      "Time taken to find frequent patterns:  6.2520592212677\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 3.08 seconds\n",
      "Time taken to find frequent patterns:  6.215937852859497\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 3.13 seconds\n",
      "Time taken to find frequent patterns:  6.210000276565552\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.39 seconds\n",
      "Total time running relim: 3.34 seconds\n",
      "Time taken to find frequent patterns:  6.732071161270142\n",
      "# of freq itemsets: 824\n",
      "time_selim_avg:  6.420869636535644\n",
      "minsup:  0.060000000000000005\n",
      "Total time running get_relim_input: 3.26 seconds\n",
      "Total time running relim: 2.98 seconds\n",
      "Time taken to find frequent patterns:  6.236997365951538\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 2.80 seconds\n",
      "Time taken to find frequent patterns:  6.012060165405273\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.33 seconds\n",
      "Total time running relim: 2.76 seconds\n",
      "Time taken to find frequent patterns:  6.084038496017456\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 2.74 seconds\n",
      "Time taken to find frequent patterns:  5.9329307079315186\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.26 seconds\n",
      "Total time running relim: 2.84 seconds\n",
      "Time taken to find frequent patterns:  6.101002931594849\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 2.79 seconds\n",
      "Time taken to find frequent patterns:  5.9399988651275635\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 2.86 seconds\n",
      "Time taken to find frequent patterns:  6.045950174331665\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.82 seconds\n",
      "Time taken to find frequent patterns:  5.997000694274902\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.30 seconds\n",
      "Total time running relim: 2.82 seconds\n",
      "Time taken to find frequent patterns:  6.115931987762451\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 2.77 seconds\n",
      "Time taken to find frequent patterns:  6.011999607086182\n",
      "# of freq itemsets: 603\n",
      "time_selim_avg:  6.0477910995483395\n",
      "minsup:  0.06999999999999999\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 2.89 seconds\n",
      "Time taken to find frequent patterns:  6.141110181808472\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.50 seconds\n",
      "Total time running relim: 2.90 seconds\n",
      "Time taken to find frequent patterns:  6.3994221687316895\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 2.78 seconds\n",
      "Time taken to find frequent patterns:  6.01155948638916\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 2.83 seconds\n",
      "Time taken to find frequent patterns:  6.080199718475342\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.37 seconds\n",
      "Total time running relim: 2.84 seconds\n",
      "Time taken to find frequent patterns:  6.211926460266113\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 2.82 seconds\n",
      "Time taken to find frequent patterns:  6.073728322982788\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.33 seconds\n",
      "Total time running relim: 2.97 seconds\n",
      "Time taken to find frequent patterns:  6.2998645305633545\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.41 seconds\n",
      "Total time running relim: 3.00 seconds\n",
      "Time taken to find frequent patterns:  6.419020175933838\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.35 seconds\n",
      "Total time running relim: 2.80 seconds\n",
      "Time taken to find frequent patterns:  6.147806882858276\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 2.85 seconds\n",
      "Time taken to find frequent patterns:  6.139224529266357\n",
      "# of freq itemsets: 458\n",
      "time_selim_avg:  6.192386245727539\n",
      "minsup:  0.08\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 2.35 seconds\n",
      "Time taken to find frequent patterns:  5.507512092590332\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 2.53 seconds\n",
      "Time taken to find frequent patterns:  5.768875598907471\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 2.57 seconds\n",
      "Time taken to find frequent patterns:  5.679908037185669\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.60 seconds\n",
      "Time taken to find frequent patterns:  5.74328351020813\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 2.59 seconds\n",
      "Time taken to find frequent patterns:  5.737131118774414\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.51 seconds\n",
      "Time taken to find frequent patterns:  5.683806896209717\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 2.85 seconds\n",
      "Time taken to find frequent patterns:  5.924299478530884\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 2.56 seconds\n",
      "Time taken to find frequent patterns:  5.776928424835205\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 2.65 seconds\n",
      "Time taken to find frequent patterns:  5.698776483535767\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 2.59 seconds\n",
      "Time taken to find frequent patterns:  5.710152626037598\n",
      "# of freq itemsets: 355\n",
      "time_selim_avg:  5.723067426681519\n",
      "minsup:  0.09\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.45 seconds\n",
      "Time taken to find frequent patterns:  5.589927673339844\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.34 seconds\n",
      "Total time running relim: 2.30 seconds\n",
      "Time taken to find frequent patterns:  5.644611835479736\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 2.47 seconds\n",
      "Time taken to find frequent patterns:  5.540351390838623\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.35 seconds\n",
      "Time taken to find frequent patterns:  5.493579626083374\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.46 seconds\n",
      "Time taken to find frequent patterns:  5.555541515350342\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 2.26 seconds\n",
      "Time taken to find frequent patterns:  5.29870343208313\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 2.34 seconds\n",
      "Time taken to find frequent patterns:  5.573923349380493\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 2.41 seconds\n",
      "Time taken to find frequent patterns:  5.436841726303101\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 2.43 seconds\n",
      "Time taken to find frequent patterns:  5.6120445728302\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 2.35 seconds\n",
      "Time taken to find frequent patterns:  5.391908884048462\n",
      "# of freq itemsets: 286\n",
      "time_selim_avg:  5.5137434005737305\n",
      "minsup:  0.09999999999999999\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.29 seconds\n",
      "Time taken to find frequent patterns:  5.463002681732178\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 2.37 seconds\n",
      "Time taken to find frequent patterns:  5.580796003341675\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 2.22 seconds\n",
      "Time taken to find frequent patterns:  5.328959941864014\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 2.27 seconds\n",
      "Time taken to find frequent patterns:  5.373634099960327\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.32 seconds\n",
      "Time taken to find frequent patterns:  5.490785837173462\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.17 seconds\n",
      "Total time running relim: 2.22 seconds\n",
      "Time taken to find frequent patterns:  5.391163349151611\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 2.27 seconds\n",
      "Time taken to find frequent patterns:  5.393306255340576\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 2.22 seconds\n",
      "Time taken to find frequent patterns:  5.340681552886963\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.22 seconds\n",
      "Time taken to find frequent patterns:  5.305066347122192\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.28 seconds\n",
      "Time taken to find frequent patterns:  5.313661098480225\n",
      "# of freq itemsets: 239\n",
      "time_selim_avg:  5.398105716705322\n",
      "minsup:  0.11\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 1.97 seconds\n",
      "Time taken to find frequent patterns:  5.123277425765991\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.09 seconds\n",
      "Time taken to find frequent patterns:  5.124021530151367\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 2.08 seconds\n",
      "Time taken to find frequent patterns:  5.297454833984375\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.96 seconds\n",
      "Time taken to find frequent patterns:  5.05900502204895\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 2.07 seconds\n",
      "Time taken to find frequent patterns:  5.163503885269165\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 2.02 seconds\n",
      "Time taken to find frequent patterns:  5.09740138053894\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 2.02 seconds\n",
      "Time taken to find frequent patterns:  5.200023889541626\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 2.04 seconds\n",
      "Time taken to find frequent patterns:  5.150953054428101\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 2.09 seconds\n",
      "Time taken to find frequent patterns:  5.163938999176025\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 1.98 seconds\n",
      "Time taken to find frequent patterns:  5.128224611282349\n",
      "# of freq itemsets: 184\n",
      "time_selim_avg:  5.150780463218689\n",
      "minsup:  0.12\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 1.93 seconds\n",
      "Time taken to find frequent patterns:  5.077965259552002\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.97 seconds\n",
      "Time taken to find frequent patterns:  5.048604965209961\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.91 seconds\n",
      "Time taken to find frequent patterns:  5.028616666793823\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.87 seconds\n",
      "Time taken to find frequent patterns:  4.915321111679077\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.93 seconds\n",
      "Time taken to find frequent patterns:  4.9919517040252686\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 1.93 seconds\n",
      "Time taken to find frequent patterns:  5.074825048446655\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 2.03 seconds\n",
      "Time taken to find frequent patterns:  5.037477016448975\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.72 seconds\n",
      "Time taken to find frequent patterns:  4.805104494094849\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.73 seconds\n",
      "Time taken to find frequent patterns:  4.799738883972168\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.75 seconds\n",
      "Time taken to find frequent patterns:  4.70318603515625\n",
      "# of freq itemsets: 167\n",
      "time_selim_avg:  4.9482791185379025\n",
      "minsup:  0.13\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.60 seconds\n",
      "Time taken to find frequent patterns:  4.678969383239746\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.58 seconds\n",
      "Time taken to find frequent patterns:  4.633013486862183\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.56 seconds\n",
      "Time taken to find frequent patterns:  4.583059072494507\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.580930709838867\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.76 seconds\n",
      "Time taken to find frequent patterns:  4.7229697704315186\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 1.58 seconds\n",
      "Time taken to find frequent patterns:  4.70499849319458\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.59 seconds\n",
      "Time taken to find frequent patterns:  4.645038604736328\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.57 seconds\n",
      "Time taken to find frequent patterns:  4.643962860107422\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.66 seconds\n",
      "Time taken to find frequent patterns:  4.701045036315918\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.63 seconds\n",
      "Time taken to find frequent patterns:  4.704033851623535\n",
      "# of freq itemsets: 143\n",
      "time_selim_avg:  4.65980212688446\n",
      "minsup:  0.14\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 1.50 seconds\n",
      "Time taken to find frequent patterns:  4.692938566207886\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.52 seconds\n",
      "Time taken to find frequent patterns:  4.53394079208374\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.48 seconds\n",
      "Time taken to find frequent patterns:  4.538999557495117\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.45 seconds\n",
      "Time taken to find frequent patterns:  4.544999837875366\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.52 seconds\n",
      "Time taken to find frequent patterns:  4.566962480545044\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.44 seconds\n",
      "Time taken to find frequent patterns:  4.529928922653198\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.49 seconds\n",
      "Time taken to find frequent patterns:  4.560995101928711\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.48 seconds\n",
      "Time taken to find frequent patterns:  4.498997449874878\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.53 seconds\n",
      "Time taken to find frequent patterns:  4.556960821151733\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.49 seconds\n",
      "Time taken to find frequent patterns:  4.507938623428345\n",
      "# of freq itemsets: 123\n",
      "time_selim_avg:  4.553266215324402\n",
      "minsup:  0.15000000000000002\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 1.50 seconds\n",
      "Time taken to find frequent patterns:  4.701022624969482\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.46 seconds\n",
      "Time taken to find frequent patterns:  4.530028820037842\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.45 seconds\n",
      "Time taken to find frequent patterns:  4.488020896911621\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.56 seconds\n",
      "Total time running relim: 1.71 seconds\n",
      "Time taken to find frequent patterns:  5.272959232330322\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.43 seconds\n",
      "Time taken to find frequent patterns:  4.468000411987305\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.5760393142700195\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.45 seconds\n",
      "Time taken to find frequent patterns:  4.54903769493103\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.542988300323486\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.47 seconds\n",
      "Time taken to find frequent patterns:  4.5039918422698975\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.45 seconds\n",
      "Time taken to find frequent patterns:  4.468000411987305\n",
      "# of freq itemsets: 110\n",
      "time_selim_avg:  4.610008955001831\n",
      "minsup:  0.16\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.263996601104736\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.2910377979278564\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.321037292480469\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.24 seconds\n",
      "Time taken to find frequent patterns:  4.197009086608887\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.313958168029785\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.26 seconds\n",
      "Time taken to find frequent patterns:  4.291066408157349\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.3279619216918945\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.2350006103515625\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 2.91 seconds\n",
      "Total time running relim: 1.33 seconds\n",
      "Time taken to find frequent patterns:  4.241930246353149\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.24 seconds\n",
      "Time taken to find frequent patterns:  4.272000074386597\n",
      "# of freq itemsets: 88\n",
      "time_selim_avg:  4.2754998207092285\n",
      "minsup:  0.17\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.19 seconds\n",
      "Time taken to find frequent patterns:  4.280000925064087\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.19 seconds\n",
      "Time taken to find frequent patterns:  4.228959560394287\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.21 seconds\n",
      "Time taken to find frequent patterns:  4.203070402145386\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.192001581192017\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.2480387687683105\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.22 seconds\n",
      "Time taken to find frequent patterns:  4.289939880371094\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 2.93 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.156933307647705\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.20 seconds\n",
      "Time taken to find frequent patterns:  4.2509989738464355\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.21 seconds\n",
      "Time taken to find frequent patterns:  4.287999391555786\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.20 seconds\n",
      "Time taken to find frequent patterns:  4.2079362869262695\n",
      "# of freq itemsets: 82\n",
      "time_selim_avg:  4.234587907791138\n",
      "minsup:  0.18000000000000002\n",
      "Total time running get_relim_input: 2.93 seconds\n",
      "Total time running relim: 1.22 seconds\n",
      "Time taken to find frequent patterns:  4.1469995975494385\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.15 seconds\n",
      "Time taken to find frequent patterns:  4.15496301651001\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.17 seconds\n",
      "Time taken to find frequent patterns:  4.217061996459961\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.13 seconds\n",
      "Time taken to find frequent patterns:  4.1359922885894775\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.15 seconds\n",
      "Time taken to find frequent patterns:  4.192046165466309\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.15 seconds\n",
      "Time taken to find frequent patterns:  4.111022233963013\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.22 seconds\n",
      "Time taken to find frequent patterns:  4.281032562255859\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.17 seconds\n",
      "Time taken to find frequent patterns:  4.215940475463867\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.15 seconds\n",
      "Time taken to find frequent patterns:  4.1980016231536865\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.14 seconds\n",
      "Time taken to find frequent patterns:  4.193996906280518\n",
      "# of freq itemsets: 72\n",
      "time_selim_avg:  4.184705686569214\n",
      "minsup:  0.19\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.04 seconds\n",
      "Time taken to find frequent patterns:  4.067071437835693\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.07 seconds\n",
      "Time taken to find frequent patterns:  4.110937833786011\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.15 seconds\n",
      "Time taken to find frequent patterns:  4.103959560394287\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.11 seconds\n",
      "Time taken to find frequent patterns:  4.085068225860596\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.10 seconds\n",
      "Time taken to find frequent patterns:  4.18107008934021\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.02 seconds\n",
      "Time taken to find frequent patterns:  4.056028366088867\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.18 seconds\n",
      "Time taken to find frequent patterns:  4.151979923248291\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 2.93 seconds\n",
      "Total time running relim: 1.09 seconds\n",
      "Time taken to find frequent patterns:  4.0190300941467285\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 2.94 seconds\n",
      "Total time running relim: 1.13 seconds\n",
      "Time taken to find frequent patterns:  4.073006629943848\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.09 seconds\n",
      "Time taken to find frequent patterns:  4.033031940460205\n",
      "# of freq itemsets: 64\n",
      "time_selim_avg:  4.088118410110473\n",
      "minsup:  0.2\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.05 seconds\n",
      "Time taken to find frequent patterns:  4.0819597244262695\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 0.97 seconds\n",
      "Time taken to find frequent patterns:  3.9930691719055176\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 0.99 seconds\n",
      "Time taken to find frequent patterns:  4.014970779418945\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 2.92 seconds\n",
      "Total time running relim: 1.04 seconds\n",
      "Time taken to find frequent patterns:  3.9570603370666504\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.06 seconds\n",
      "Time taken to find frequent patterns:  4.042043209075928\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.05 seconds\n",
      "Time taken to find frequent patterns:  4.0179314613342285\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.06 seconds\n",
      "Time taken to find frequent patterns:  4.157032012939453\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 0.95 seconds\n",
      "Time taken to find frequent patterns:  3.9649736881256104\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 0.97 seconds\n",
      "Time taken to find frequent patterns:  4.008972406387329\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.00 seconds\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [39:04<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total time running relim: 1.07 seconds\n",
      "Time taken to find frequent patterns:  4.066040754318237\n",
      "# of freq itemsets: 58\n",
      "time_selim_avg:  4.030405354499817\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_selim = list(np.arange(0.01, 0.21, 0.01))\n",
    "time_selim = []\n",
    "with tqdm(total=len(minsup_range_selim)) as pbar:\n",
    "    for minsup in minsup_range_selim:\n",
    "        print('minsup: ', minsup)\n",
    "        time_selim_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_selim_avg += get_selim_time(data_set, min_support=minsup)\n",
    "        time_selim_avg /= cal_times\n",
    "        time_selim.append(time_selim_avg)\n",
    "        print('time_selim_avg: ', time_selim_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 40,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[18.957833, 16.1991812, 14.162310000000002, 11.580839700000002, 10.472966000000001, 9.370595500000002, 8.9321835, 9.6227652, 6.1277981, 5.7928823000000005, 5.3585063, 4.9490306, 4.664095099999999]\n",
      "[18.825123499999997, 13.3884043, 11.237117600000001, 9.879805399999999, 8.540507000000002, 8.141369899999999, 8.486933500000001, 6.690678, 6.174213999999999, 6.487300100000001, 4.8704965, 5.2750936, 3.0695968000000002, 2.7768595, 3.1996479, 3.1787002, 2.9792596, 3.4582451999999995, 3.2616321, 5.1362562]\n",
      "[9.959203839302063, 8.358417916297913, 7.453635287284851, 6.975187063217163, 6.420869636535644, 6.0477910995483395, 6.192386245727539, 5.723067426681519, 5.5137434005737305, 5.398105716705322, 5.150780463218689, 4.9482791185379025, 4.65980212688446, 4.553266215324402, 4.610008955001831, 4.2754998207092285, 4.234587907791138, 4.184705686569214, 4.088118410110473, 4.030405354499817]\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 900x600 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "print(time_apriori)\n",
    "print(time_fpgrowth)\n",
    "print(time_selim)\n",
    "plt.figure(figsize=(9, 6), dpi=100)\n",
    "plt.plot(minsup_range_apriori[:-1], time_apriori[:-1], label=\"Apriori\")\n",
    "plt.plot(minsup_range_fpgrowth[:-1], time_fpgrowth[:-1], label=\"FP-Growth\")\n",
    "plt.plot(minsup_range_selim[:-1], time_selim[:-1], label=\"Selim\")\n",
    "plt.xlabel(\"Minimum Support\")\n",
    "plt.ylabel(\"Time (s)\")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 42,
   "metadata": {},
   "outputs": [],
   "source": [
    "dataset_name_3 = 'groceries - groceries.csv'\n",
    "with open(dataset_name_3, 'r', encoding='utf8') as f:\n",
    "    reader = csv.reader(f)\n",
    "    data = list(reader)\n",
    "data = data[1:]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 43,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/13 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.08\n",
      "Create Ck time (s):  0.26393399999999995\n",
      "Generate Lk time (s):  19.405053\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.202635\n",
      "Generate Lk time (s):  22.637502\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.21902200000000002\n",
      "Generate Lk time (s):  22.17648\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.201999\n",
      "Generate Lk time (s):  20.844448000000003\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.19959000000000002\n",
      "Generate Lk time (s):  20.826322\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.205144\n",
      "Generate Lk time (s):  20.629802\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.211428\n",
      "Generate Lk time (s):  21.080156\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.197857\n",
      "Generate Lk time (s):  20.652890000000003\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.206975\n",
      "Generate Lk time (s):  20.703698\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "Create Ck time (s):  0.206629\n",
      "Generate Lk time (s):  20.917391\n",
      "Apriori over\n",
      "# of freq itemsets: 355\n",
      "time_apriori_avg:  21.199399000000003\n",
      "minsup:  0.09\n",
      "Create Ck time (s):  0.19145\n",
      "Generate Lk time (s):  17.610729000000003\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.179552\n",
      "Generate Lk time (s):  17.792768999999996\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.18858400000000003\n",
      "Generate Lk time (s):  17.680754999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.19695\n",
      "Generate Lk time (s):  18.534671\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.17979400000000004\n",
      "Generate Lk time (s):  17.975616000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.18373599999999995\n",
      "Generate Lk time (s):  17.646425999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.20602600000000001\n",
      "Generate Lk time (s):  17.787450999999997\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.1986\n",
      "Generate Lk time (s):  17.601874999999996\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.18003799999999998\n",
      "Generate Lk time (s):  17.782868999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "Create Ck time (s):  0.221226\n",
      "Generate Lk time (s):  18.086229000000003\n",
      "Apriori over\n",
      "# of freq itemsets: 286\n",
      "time_apriori_avg:  18.042839\n",
      "minsup:  0.09999999999999999\n",
      "Create Ck time (s):  0.22646200000000002\n",
      "Generate Lk time (s):  15.571805000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.179321\n",
      "Generate Lk time (s):  15.595826\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.17998899999999998\n",
      "Generate Lk time (s):  15.802773000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.17551300000000003\n",
      "Generate Lk time (s):  15.762158999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.18444\n",
      "Generate Lk time (s):  16.329224\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.17912999999999998\n",
      "Generate Lk time (s):  15.534117000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.17741300000000002\n",
      "Generate Lk time (s):  15.821174\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.18041800000000002\n",
      "Generate Lk time (s):  15.775891999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.19407\n",
      "Generate Lk time (s):  15.823897\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "Create Ck time (s):  0.204444\n",
      "Generate Lk time (s):  15.795625999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 239\n",
      "time_apriori_avg:  15.969569099999998\n",
      "minsup:  0.10999999999999999\n",
      "Create Ck time (s):  0.16997\n",
      "Generate Lk time (s):  13.222896\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.17610499999999998\n",
      "Generate Lk time (s):  13.077112000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.176127\n",
      "Generate Lk time (s):  13.272896999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.17394900000000002\n",
      "Generate Lk time (s):  12.943914999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.211045\n",
      "Generate Lk time (s):  13.263795000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.189512\n",
      "Generate Lk time (s):  12.912804\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.188451\n",
      "Generate Lk time (s):  12.959774000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.16745600000000002\n",
      "Generate Lk time (s):  12.764275\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.176066\n",
      "Generate Lk time (s):  12.687971000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "Create Ck time (s):  0.17831000000000002\n",
      "Generate Lk time (s):  13.427557\n",
      "Apriori over\n",
      "# of freq itemsets: 184\n",
      "time_apriori_avg:  13.234399499999999\n",
      "minsup:  0.11999999999999998\n",
      "Create Ck time (s):  0.170204\n",
      "Generate Lk time (s):  11.390598999999996\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.191915\n",
      "Generate Lk time (s):  11.693091\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.181751\n",
      "Generate Lk time (s):  11.496376999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.170614\n",
      "Generate Lk time (s):  11.277519999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.16955499999999998\n",
      "Generate Lk time (s):  11.708713000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.171699\n",
      "Generate Lk time (s):  11.500073\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.185222\n",
      "Generate Lk time (s):  11.422792000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.176237\n",
      "Generate Lk time (s):  11.806648000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.17553699999999997\n",
      "Generate Lk time (s):  11.541511\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "Create Ck time (s):  0.167499\n",
      "Generate Lk time (s):  11.276311000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 167\n",
      "time_apriori_avg:  11.6875892\n",
      "minsup:  0.12999999999999998\n",
      "Create Ck time (s):  0.184235\n",
      "Generate Lk time (s):  10.401390000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.187894\n",
      "Generate Lk time (s):  10.459026999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.16296900000000003\n",
      "Generate Lk time (s):  10.553785\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.1647\n",
      "Generate Lk time (s):  10.333103999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.164603\n",
      "Generate Lk time (s):  10.368472\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.173047\n",
      "Generate Lk time (s):  10.928939000000002\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.165875\n",
      "Generate Lk time (s):  10.390094\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.174734\n",
      "Generate Lk time (s):  10.208733\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.18988\n",
      "Generate Lk time (s):  10.299693\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "Create Ck time (s):  0.16821\n",
      "Generate Lk time (s):  10.401954\n",
      "Apriori over\n",
      "# of freq itemsets: 143\n",
      "time_apriori_avg:  10.608427800000001\n",
      "minsup:  0.13999999999999996\n",
      "Create Ck time (s):  0.19181299999999998\n",
      "Generate Lk time (s):  8.748508000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.179989\n",
      "Generate Lk time (s):  8.830471\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.17793799999999999\n",
      "Generate Lk time (s):  8.926917\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.163086\n",
      "Generate Lk time (s):  9.020289\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.162908\n",
      "Generate Lk time (s):  8.758845\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.177955\n",
      "Generate Lk time (s):  9.080623\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.18014800000000003\n",
      "Generate Lk time (s):  8.865779999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.174113\n",
      "Generate Lk time (s):  8.755642\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.158829\n",
      "Generate Lk time (s):  9.002582999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "Create Ck time (s):  0.161238\n",
      "Generate Lk time (s):  8.952819\n",
      "Apriori over\n",
      "# of freq itemsets: 123\n",
      "time_apriori_avg:  9.0675848\n",
      "minsup:  0.14999999999999997\n",
      "Create Ck time (s):  0.15994\n",
      "Generate Lk time (s):  8.564\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.17038\n",
      "Generate Lk time (s):  8.401571999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.167043\n",
      "Generate Lk time (s):  8.671020999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.175021\n",
      "Generate Lk time (s):  8.676174000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.160775\n",
      "Generate Lk time (s):  8.625413\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.16073600000000002\n",
      "Generate Lk time (s):  8.462729999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.157361\n",
      "Generate Lk time (s):  8.690011\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.171929\n",
      "Generate Lk time (s):  8.372011999999998\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.163806\n",
      "Generate Lk time (s):  8.665189\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "Create Ck time (s):  0.160563\n",
      "Generate Lk time (s):  8.669139\n",
      "Apriori over\n",
      "# of freq itemsets: 110\n",
      "time_apriori_avg:  8.7449838\n",
      "minsup:  0.15999999999999998\n",
      "Create Ck time (s):  0.16356400000000001\n",
      "Generate Lk time (s):  6.398799999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.154661\n",
      "Generate Lk time (s):  6.3983300000000005\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.158666\n",
      "Generate Lk time (s):  6.533509\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.166358\n",
      "Generate Lk time (s):  6.433402\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.167721\n",
      "Generate Lk time (s):  6.385898999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.159097\n",
      "Generate Lk time (s):  6.41334\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.15959800000000002\n",
      "Generate Lk time (s):  6.472241\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.156786\n",
      "Generate Lk time (s):  6.366059\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.17108399999999999\n",
      "Generate Lk time (s):  6.463049\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "Create Ck time (s):  0.163718\n",
      "Generate Lk time (s):  6.737502\n",
      "Apriori over\n",
      "# of freq itemsets: 88\n",
      "time_apriori_avg:  6.622738099999999\n",
      "minsup:  0.16999999999999996\n",
      "Create Ck time (s):  0.163661\n",
      "Generate Lk time (s):  5.980630000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.15528799999999998\n",
      "Generate Lk time (s):  5.935898\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.167035\n",
      "Generate Lk time (s):  6.19616\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.184833\n",
      "Generate Lk time (s):  5.939245\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.161804\n",
      "Generate Lk time (s):  6.315332000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.15684900000000002\n",
      "Generate Lk time (s):  6.296885000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.201295\n",
      "Generate Lk time (s):  6.283805999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.156121\n",
      "Generate Lk time (s):  6.308223\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.179688\n",
      "Generate Lk time (s):  6.172841\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "Create Ck time (s):  0.16531700000000002\n",
      "Generate Lk time (s):  6.215589999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 82\n",
      "time_apriori_avg:  6.334338799999999\n",
      "minsup:  0.17999999999999994\n",
      "Create Ck time (s):  0.158002\n",
      "Generate Lk time (s):  5.763190000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.16804100000000002\n",
      "Generate Lk time (s):  5.61607\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.157019\n",
      "Generate Lk time (s):  5.992199\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.166915\n",
      "Generate Lk time (s):  6.045768\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.17228500000000002\n",
      "Generate Lk time (s):  5.778684\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.16538\n",
      "Generate Lk time (s):  5.68502\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.17268\n",
      "Generate Lk time (s):  5.696223000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.156609\n",
      "Generate Lk time (s):  5.725326\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.15605600000000003\n",
      "Generate Lk time (s):  5.786067\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "Create Ck time (s):  0.158089\n",
      "Generate Lk time (s):  5.696337\n",
      "Apriori over\n",
      "# of freq itemsets: 72\n",
      "time_apriori_avg:  5.9421699\n",
      "minsup:  0.18999999999999995\n",
      "Create Ck time (s):  0.162448\n",
      "Generate Lk time (s):  5.129039999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.152955\n",
      "Generate Lk time (s):  5.094041\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.159025\n",
      "Generate Lk time (s):  5.296527\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.15752700000000003\n",
      "Generate Lk time (s):  5.373892\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.157952\n",
      "Generate Lk time (s):  5.566449999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.15784399999999998\n",
      "Generate Lk time (s):  5.404558000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.155011\n",
      "Generate Lk time (s):  5.211282000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.170481\n",
      "Generate Lk time (s):  5.222146\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.190026\n",
      "Generate Lk time (s):  5.552018\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "Create Ck time (s):  0.152953\n",
      "Generate Lk time (s):  5.515013\n",
      "Apriori over\n",
      "# of freq itemsets: 64\n",
      "time_apriori_avg:  5.4986369999999996\n",
      "minsup:  0.19999999999999996\n",
      "Create Ck time (s):  0.155962\n",
      "Generate Lk time (s):  5.106000999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.164034\n",
      "Generate Lk time (s):  4.763478\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.190161\n",
      "Generate Lk time (s):  5.992222999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.196775\n",
      "Generate Lk time (s):  5.800088000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.236478\n",
      "Generate Lk time (s):  5.709942000000001\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.186037\n",
      "Generate Lk time (s):  5.70364\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.165474\n",
      "Generate Lk time (s):  5.181106999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.181179\n",
      "Generate Lk time (s):  5.279318\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "Create Ck time (s):  0.16897\n",
      "Generate Lk time (s):  5.273823999999999\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/13 [23:05<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Create Ck time (s):  0.174933\n",
      "Generate Lk time (s):  5.199721\n",
      "Apriori over\n",
      "# of freq itemsets: 58\n",
      "time_apriori_avg:  5.5834341\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_apriori = list(np.arange(0.08, 0.21, 0.01))\n",
    "time_apriori = []\n",
    "with tqdm(total=len(minsup_range_apriori)) as pbar:\n",
    "    for minsup in minsup_range_apriori:\n",
    "        print('minsup: ', minsup)\n",
    "        time_apriori_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_apriori_avg += get_apriori_time(data_set, min_sup=minsup)\n",
    "        time_apriori_avg /= cal_times\n",
    "        time_apriori.append(time_apriori_avg)\n",
    "        print('time_apriori_avg: ', time_apriori_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 44,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.01\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "FP-Growth over\n",
      "# of freq itemsets: 9734\n",
      "time_fpgrowth_avg:  23.0254945\n",
      "minsup:  0.02\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "FP-Growth over\n",
      "# of freq itemsets: 3589\n",
      "time_fpgrowth_avg:  15.559154000000001\n",
      "minsup:  0.03\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1907\n",
      "time_fpgrowth_avg:  13.666261600000002\n",
      "minsup:  0.04\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "FP-Growth over\n",
      "# of freq itemsets: 1230\n",
      "time_fpgrowth_avg:  11.4372262\n",
      "minsup:  0.05\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "FP-Growth over\n",
      "# of freq itemsets: 824\n",
      "time_fpgrowth_avg:  11.8696593\n",
      "minsup:  0.060000000000000005\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "FP-Growth over\n",
      "# of freq itemsets: 603\n",
      "time_fpgrowth_avg:  10.3700595\n",
      "minsup:  0.06999999999999999\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "FP-Growth over\n",
      "# of freq itemsets: 458\n",
      "time_fpgrowth_avg:  9.1480486\n",
      "minsup:  0.08\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "FP-Growth over\n",
      "# of freq itemsets: 355\n",
      "time_fpgrowth_avg:  7.066901800000001\n",
      "minsup:  0.09\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "FP-Growth over\n",
      "# of freq itemsets: 286\n",
      "time_fpgrowth_avg:  6.3867088999999995\n",
      "minsup:  0.09999999999999999\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "FP-Growth over\n",
      "# of freq itemsets: 239\n",
      "time_fpgrowth_avg:  6.442966299999999\n",
      "minsup:  0.11\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "FP-Growth over\n",
      "# of freq itemsets: 184\n",
      "time_fpgrowth_avg:  4.759300400000001\n",
      "minsup:  0.12\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "FP-Growth over\n",
      "# of freq itemsets: 167\n",
      "time_fpgrowth_avg:  5.6250393999999995\n",
      "minsup:  0.13\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "FP-Growth over\n",
      "# of freq itemsets: 143\n",
      "time_fpgrowth_avg:  3.0191001\n",
      "minsup:  0.14\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "FP-Growth over\n",
      "# of freq itemsets: 123\n",
      "time_fpgrowth_avg:  2.7110019999999997\n",
      "minsup:  0.15000000000000002\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "FP-Growth over\n",
      "# of freq itemsets: 110\n",
      "time_fpgrowth_avg:  3.1110982\n",
      "minsup:  0.16\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "FP-Growth over\n",
      "# of freq itemsets: 88\n",
      "time_fpgrowth_avg:  2.9779035\n",
      "minsup:  0.17\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "FP-Growth over\n",
      "# of freq itemsets: 82\n",
      "time_fpgrowth_avg:  2.8249929000000003\n",
      "minsup:  0.18000000000000002\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "FP-Growth over\n",
      "# of freq itemsets: 72\n",
      "time_fpgrowth_avg:  3.7234263\n",
      "minsup:  0.19\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "FP-Growth over\n",
      "# of freq itemsets: 64\n",
      "time_fpgrowth_avg:  3.3767623\n",
      "minsup:  0.2\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "FP-Growth over\n",
      "# of freq itemsets: 58\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [25:20<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "FP-Growth over\n",
      "# of freq itemsets: 58\n",
      "time_fpgrowth_avg:  4.9637028999999995\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_fpgrowth = list(np.arange(0.01, 0.21, 0.01))\n",
    "time_fpgrowth = []\n",
    "with tqdm(total=len(minsup_range_fpgrowth)) as pbar:\n",
    "    for minsup in minsup_range_fpgrowth:\n",
    "        print('minsup: ', minsup)\n",
    "        time_fpgrowth_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_fpgrowth_avg += get_fpgrowth_time(data_set, min_sup=minsup)\n",
    "        time_fpgrowth_avg /= cal_times\n",
    "        time_fpgrowth.append(time_fpgrowth_avg)\n",
    "        print('time_fpgrowth_avg: ', time_fpgrowth_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 45,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [00:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "minsup:  0.01\n",
      "Total time running get_relim_input: 5.97 seconds\n",
      "Total time running relim: 11.97 seconds\n",
      "Time taken to find frequent patterns:  17.939088582992554\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 4.87 seconds\n",
      "Total time running relim: 11.60 seconds\n",
      "Time taken to find frequent patterns:  16.475555658340454\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 4.60 seconds\n",
      "Total time running relim: 14.41 seconds\n",
      "Time taken to find frequent patterns:  19.012181520462036\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 7.19 seconds\n",
      "Total time running relim: 15.63 seconds\n",
      "Time taken to find frequent patterns:  22.820385694503784\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 4.33 seconds\n",
      "Total time running relim: 11.27 seconds\n",
      "Time taken to find frequent patterns:  15.59576964378357\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 4.57 seconds\n",
      "Total time running relim: 11.21 seconds\n",
      "Time taken to find frequent patterns:  15.77970004081726\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 4.15 seconds\n",
      "Total time running relim: 9.27 seconds\n",
      "Time taken to find frequent patterns:  13.423811912536621\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 7.53 seconds\n",
      "Time taken to find frequent patterns:  10.675995588302612\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 6.87 seconds\n",
      "Time taken to find frequent patterns:  9.97700023651123\n",
      "# of freq itemsets: 9733\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 6.98 seconds\n",
      "Time taken to find frequent patterns:  10.10902738571167\n",
      "# of freq itemsets: 9733\n",
      "time_selim_avg:  15.18085162639618\n",
      "minsup:  0.02\n",
      "Total time running get_relim_input: 3.21 seconds\n",
      "Total time running relim: 6.69 seconds\n",
      "Time taken to find frequent patterns:  9.898997783660889\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 5.78 seconds\n",
      "Time taken to find frequent patterns:  9.019043684005737\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 5.37 seconds\n",
      "Time taken to find frequent patterns:  8.399002075195312\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 5.17 seconds\n",
      "Time taken to find frequent patterns:  8.269922733306885\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 5.31 seconds\n",
      "Time taken to find frequent patterns:  8.335061311721802\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 5.10 seconds\n",
      "Time taken to find frequent patterns:  8.224939584732056\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 5.11 seconds\n",
      "Time taken to find frequent patterns:  8.171037673950195\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 5.21 seconds\n",
      "Time taken to find frequent patterns:  8.314939260482788\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 5.31 seconds\n",
      "Time taken to find frequent patterns:  8.412930727005005\n",
      "# of freq itemsets: 3588\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 5.18 seconds\n",
      "Time taken to find frequent patterns:  8.336965560913086\n",
      "# of freq itemsets: 3588\n",
      "time_selim_avg:  8.538284039497375\n",
      "minsup:  0.03\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 4.21 seconds\n",
      "Time taken to find frequent patterns:  7.265931606292725\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 4.95 seconds\n",
      "Time taken to find frequent patterns:  8.063997030258179\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 4.31 seconds\n",
      "Time taken to find frequent patterns:  7.448023796081543\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.30 seconds\n",
      "Total time running relim: 4.41 seconds\n",
      "Time taken to find frequent patterns:  7.708955764770508\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 4.39 seconds\n",
      "Time taken to find frequent patterns:  7.417006731033325\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 4.30 seconds\n",
      "Time taken to find frequent patterns:  7.374969959259033\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 4.21 seconds\n",
      "Time taken to find frequent patterns:  7.335024356842041\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 4.44 seconds\n",
      "Time taken to find frequent patterns:  7.511932611465454\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 4.30 seconds\n",
      "Time taken to find frequent patterns:  7.323997497558594\n",
      "# of freq itemsets: 1907\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 4.34 seconds\n",
      "Time taken to find frequent patterns:  7.355000019073486\n",
      "# of freq itemsets: 1907\n",
      "time_selim_avg:  7.480483937263489\n",
      "minsup:  0.04\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 4.04 seconds\n",
      "Time taken to find frequent patterns:  7.130001068115234\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 3.76 seconds\n",
      "Time taken to find frequent patterns:  6.827961444854736\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 4.10 seconds\n",
      "Time taken to find frequent patterns:  7.3190014362335205\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 3.88 seconds\n",
      "Time taken to find frequent patterns:  6.929931163787842\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 3.59 seconds\n",
      "Time taken to find frequent patterns:  6.577999830245972\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 3.50 seconds\n",
      "Time taken to find frequent patterns:  6.507998704910278\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 3.54 seconds\n",
      "Time taken to find frequent patterns:  6.567938566207886\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 3.49 seconds\n",
      "Time taken to find frequent patterns:  6.487933158874512\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 3.58 seconds\n",
      "Time taken to find frequent patterns:  6.71000075340271\n",
      "# of freq itemsets: 1230\n",
      "Total time running get_relim_input: 3.23 seconds\n",
      "Total time running relim: 3.93 seconds\n",
      "Time taken to find frequent patterns:  7.16203498840332\n",
      "# of freq itemsets: 1230\n",
      "time_selim_avg:  6.822080111503601\n",
      "minsup:  0.05\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 3.08 seconds\n",
      "Time taken to find frequent patterns:  6.111060857772827\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 3.27 seconds\n",
      "Time taken to find frequent patterns:  6.267951965332031\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 3.12 seconds\n",
      "Time taken to find frequent patterns:  6.131997346878052\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 3.19 seconds\n",
      "Time taken to find frequent patterns:  6.241999864578247\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 3.11 seconds\n",
      "Time taken to find frequent patterns:  6.182001829147339\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 3.23 seconds\n",
      "Time taken to find frequent patterns:  6.191931247711182\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 3.24 seconds\n",
      "Time taken to find frequent patterns:  6.2565155029296875\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 3.11 seconds\n",
      "Time taken to find frequent patterns:  6.0909340381622314\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 3.18 seconds\n",
      "Time taken to find frequent patterns:  6.174060106277466\n",
      "# of freq itemsets: 824\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 3.10 seconds\n",
      "Time taken to find frequent patterns:  6.158982753753662\n",
      "# of freq itemsets: 824\n",
      "time_selim_avg:  6.180743551254272\n",
      "minsup:  0.060000000000000005\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 2.81 seconds\n",
      "Time taken to find frequent patterns:  5.885938882827759\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 2.99 seconds\n",
      "Time taken to find frequent patterns:  6.100010633468628\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.82 seconds\n",
      "Time taken to find frequent patterns:  5.961005687713623\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 2.84 seconds\n",
      "Time taken to find frequent patterns:  6.131061553955078\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 2.86 seconds\n",
      "Time taken to find frequent patterns:  5.940967082977295\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.77 seconds\n",
      "Time taken to find frequent patterns:  5.829035997390747\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.16 seconds\n",
      "Total time running relim: 2.86 seconds\n",
      "Time taken to find frequent patterns:  6.0269694328308105\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 2.86 seconds\n",
      "Time taken to find frequent patterns:  5.998994588851929\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 2.81 seconds\n",
      "Time taken to find frequent patterns:  5.937056064605713\n",
      "# of freq itemsets: 603\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 2.78 seconds\n",
      "Time taken to find frequent patterns:  5.8749823570251465\n",
      "# of freq itemsets: 603\n",
      "time_selim_avg:  5.968602228164673\n",
      "minsup:  0.06999999999999999\n",
      "Total time running get_relim_input: 2.92 seconds\n",
      "Total time running relim: 2.61 seconds\n",
      "Time taken to find frequent patterns:  5.536029577255249\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 2.71 seconds\n",
      "Time taken to find frequent patterns:  5.825000762939453\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 2.50 seconds\n",
      "Time taken to find frequent patterns:  5.550000429153442\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 2.61 seconds\n",
      "Time taken to find frequent patterns:  5.616000175476074\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.57 seconds\n",
      "Time taken to find frequent patterns:  5.654997110366821\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.12 seconds\n",
      "Total time running relim: 2.53 seconds\n",
      "Time taken to find frequent patterns:  5.653996229171753\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 2.64 seconds\n",
      "Time taken to find frequent patterns:  5.627000570297241\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 2.55 seconds\n",
      "Time taken to find frequent patterns:  5.5909998416900635\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 2.50 seconds\n",
      "Time taken to find frequent patterns:  5.586064338684082\n",
      "# of freq itemsets: 458\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 2.60 seconds\n",
      "Time taken to find frequent patterns:  5.59399938583374\n",
      "# of freq itemsets: 458\n",
      "time_selim_avg:  5.623408842086792\n",
      "minsup:  0.08\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 2.48 seconds\n",
      "Time taken to find frequent patterns:  5.557991027832031\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 2.25 seconds\n",
      "Time taken to find frequent patterns:  5.29900336265564\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 2.43 seconds\n",
      "Time taken to find frequent patterns:  5.564000129699707\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 2.31 seconds\n",
      "Time taken to find frequent patterns:  5.4080023765563965\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.41 seconds\n",
      "Time taken to find frequent patterns:  5.467978477478027\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.20 seconds\n",
      "Total time running relim: 2.27 seconds\n",
      "Time taken to find frequent patterns:  5.472010135650635\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 2.42 seconds\n",
      "Time taken to find frequent patterns:  5.467960596084595\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.19 seconds\n",
      "Total time running relim: 2.43 seconds\n",
      "Time taken to find frequent patterns:  5.62103796005249\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 2.28 seconds\n",
      "Time taken to find frequent patterns:  5.29193115234375\n",
      "# of freq itemsets: 355\n",
      "Total time running get_relim_input: 3.26 seconds\n",
      "Total time running relim: 2.83 seconds\n",
      "Time taken to find frequent patterns:  6.091029167175293\n",
      "# of freq itemsets: 355\n",
      "time_selim_avg:  5.524094438552856\n",
      "minsup:  0.09\n",
      "Total time running get_relim_input: 3.15 seconds\n",
      "Total time running relim: 2.26 seconds\n",
      "Time taken to find frequent patterns:  5.4170005321502686\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.18 seconds\n",
      "Time taken to find frequent patterns:  5.209929943084717\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 2.17 seconds\n",
      "Time taken to find frequent patterns:  5.210003137588501\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 2.94 seconds\n",
      "Total time running relim: 2.21 seconds\n",
      "Time taken to find frequent patterns:  5.152069807052612\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.12 seconds\n",
      "Time taken to find frequent patterns:  5.153946399688721\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 2.21 seconds\n",
      "Time taken to find frequent patterns:  5.176969051361084\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.16 seconds\n",
      "Time taken to find frequent patterns:  5.189069986343384\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.22 seconds\n",
      "Time taken to find frequent patterns:  5.307010889053345\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.19 seconds\n",
      "Time taken to find frequent patterns:  5.281932592391968\n",
      "# of freq itemsets: 286\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 2.19 seconds\n",
      "Time taken to find frequent patterns:  5.188997507095337\n",
      "# of freq itemsets: 286\n",
      "time_selim_avg:  5.228692984580993\n",
      "minsup:  0.09999999999999999\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 2.09 seconds\n",
      "Time taken to find frequent patterns:  5.132953405380249\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.98 seconds\n",
      "Time taken to find frequent patterns:  4.965067148208618\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 2.03 seconds\n",
      "Time taken to find frequent patterns:  5.077000617980957\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 2.06 seconds\n",
      "Time taken to find frequent patterns:  5.153064727783203\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 2.04 seconds\n",
      "Time taken to find frequent patterns:  5.169983148574829\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.05 seconds\n",
      "Time taken to find frequent patterns:  5.089000701904297\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 2.01 seconds\n",
      "Time taken to find frequent patterns:  5.046001672744751\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 2.93 seconds\n",
      "Total time running relim: 2.09 seconds\n",
      "Time taken to find frequent patterns:  5.0190019607543945\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 2.00 seconds\n",
      "Time taken to find frequent patterns:  5.0610010623931885\n",
      "# of freq itemsets: 239\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 2.09 seconds\n",
      "Time taken to find frequent patterns:  5.097966909408569\n",
      "# of freq itemsets: 239\n",
      "time_selim_avg:  5.081104135513305\n",
      "minsup:  0.11\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.79 seconds\n",
      "Time taken to find frequent patterns:  4.877971887588501\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.77 seconds\n",
      "Time taken to find frequent patterns:  4.819998502731323\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.95 seconds\n",
      "Time taken to find frequent patterns:  4.904072999954224\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.91 seconds\n",
      "Time taken to find frequent patterns:  4.992972135543823\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.92 seconds\n",
      "Time taken to find frequent patterns:  4.94196891784668\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.90 seconds\n",
      "Time taken to find frequent patterns:  4.842000484466553\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.88 seconds\n",
      "Time taken to find frequent patterns:  4.828068494796753\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.77 seconds\n",
      "Time taken to find frequent patterns:  4.900998592376709\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.85 seconds\n",
      "Time taken to find frequent patterns:  4.885069131851196\n",
      "# of freq itemsets: 184\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.82 seconds\n",
      "Time taken to find frequent patterns:  4.8169872760772705\n",
      "# of freq itemsets: 184\n",
      "time_selim_avg:  4.881010842323303\n",
      "minsup:  0.12\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.83 seconds\n",
      "Time taken to find frequent patterns:  4.85500168800354\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.73 seconds\n",
      "Time taken to find frequent patterns:  4.820040464401245\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.71 seconds\n",
      "Time taken to find frequent patterns:  4.771016597747803\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.71 seconds\n",
      "Time taken to find frequent patterns:  4.666018724441528\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.73 seconds\n",
      "Time taken to find frequent patterns:  4.687042951583862\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.74 seconds\n",
      "Time taken to find frequent patterns:  4.7219343185424805\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.02 seconds\n",
      "Total time running relim: 1.94 seconds\n",
      "Time taken to find frequent patterns:  4.95799994468689\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.75 seconds\n",
      "Time taken to find frequent patterns:  4.7099995613098145\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 3.28 seconds\n",
      "Total time running relim: 1.90 seconds\n",
      "Time taken to find frequent patterns:  5.180997610092163\n",
      "# of freq itemsets: 167\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.72 seconds\n",
      "Time taken to find frequent patterns:  4.708022832870483\n",
      "# of freq itemsets: 167\n",
      "time_selim_avg:  4.807807469367981\n",
      "minsup:  0.13\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.623068332672119\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.07 seconds\n",
      "Total time running relim: 1.62 seconds\n",
      "Time taken to find frequent patterns:  4.691071271896362\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.59 seconds\n",
      "Time taken to find frequent patterns:  4.57699990272522\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.60 seconds\n",
      "Time taken to find frequent patterns:  4.642055034637451\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.67 seconds\n",
      "Time taken to find frequent patterns:  4.649045467376709\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.06 seconds\n",
      "Total time running relim: 1.57 seconds\n",
      "Time taken to find frequent patterns:  4.630939483642578\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.67 seconds\n",
      "Time taken to find frequent patterns:  4.782000780105591\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.13 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.742069959640503\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.72 seconds\n",
      "Time taken to find frequent patterns:  4.727947473526001\n",
      "# of freq itemsets: 143\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.601014852523804\n",
      "# of freq itemsets: 143\n",
      "time_selim_avg:  4.666621255874634\n",
      "minsup:  0.14\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.55 seconds\n",
      "Time taken to find frequent patterns:  4.548615455627441\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.50 seconds\n",
      "Time taken to find frequent patterns:  4.481931924819946\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.55 seconds\n",
      "Time taken to find frequent patterns:  4.593940019607544\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.52 seconds\n",
      "Time taken to find frequent patterns:  4.52348518371582\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.14 seconds\n",
      "Total time running relim: 1.50 seconds\n",
      "Time taken to find frequent patterns:  4.641983985900879\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.54 seconds\n",
      "Time taken to find frequent patterns:  4.489993572235107\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 2.95 seconds\n",
      "Total time running relim: 1.57 seconds\n",
      "Time taken to find frequent patterns:  4.522931098937988\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.51 seconds\n",
      "Time taken to find frequent patterns:  4.535027980804443\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.52 seconds\n",
      "Time taken to find frequent patterns:  4.574995279312134\n",
      "# of freq itemsets: 123\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.49 seconds\n",
      "Time taken to find frequent patterns:  4.526018142700195\n",
      "# of freq itemsets: 123\n",
      "time_selim_avg:  4.54389226436615\n",
      "minsup:  0.15000000000000002\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.70 seconds\n",
      "Time taken to find frequent patterns:  4.73699426651001\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.55 seconds\n",
      "Time taken to find frequent patterns:  4.6589953899383545\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.576993227005005\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.96 seconds\n",
      "Total time running relim: 1.58 seconds\n",
      "Time taken to find frequent patterns:  4.543040990829468\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.664061069488525\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.47 seconds\n",
      "Time taken to find frequent patterns:  4.4349377155303955\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.93 seconds\n",
      "Total time running relim: 1.64 seconds\n",
      "Time taken to find frequent patterns:  4.561988115310669\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.99 seconds\n",
      "Total time running relim: 1.49 seconds\n",
      "Time taken to find frequent patterns:  4.482025384902954\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.61 seconds\n",
      "Time taken to find frequent patterns:  4.608030319213867\n",
      "# of freq itemsets: 110\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.53 seconds\n",
      "Time taken to find frequent patterns:  4.493958234786987\n",
      "# of freq itemsets: 110\n",
      "time_selim_avg:  4.576102471351623\n",
      "minsup:  0.16\n",
      "Total time running get_relim_input: 2.97 seconds\n",
      "Total time running relim: 1.38 seconds\n",
      "Time taken to find frequent patterns:  4.351949214935303\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.03 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.320974111557007\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.34 seconds\n",
      "Time taken to find frequent patterns:  4.354061126708984\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.01 seconds\n",
      "Total time running relim: 1.32 seconds\n",
      "Time taken to find frequent patterns:  4.335994243621826\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.21 seconds\n",
      "Time taken to find frequent patterns:  4.3060619831085205\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.264019012451172\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.28 seconds\n",
      "Time taken to find frequent patterns:  4.368068695068359\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.28 seconds\n",
      "Time taken to find frequent patterns:  4.384591817855835\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.325301647186279\n",
      "# of freq itemsets: 88\n",
      "Total time running get_relim_input: 2.98 seconds\n",
      "Total time running relim: 1.27 seconds\n",
      "Time taken to find frequent patterns:  4.24098801612854\n",
      "# of freq itemsets: 88\n",
      "time_selim_avg:  4.325200986862183\n",
      "minsup:  0.17\n",
      "Total time running get_relim_input: 2.94 seconds\n",
      "Total time running relim: 1.66 seconds\n",
      "Time taken to find frequent patterns:  4.604010820388794\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.333062410354614\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.25 seconds\n",
      "Time taken to find frequent patterns:  4.301030397415161\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.17 seconds\n",
      "Time taken to find frequent patterns:  4.283999919891357\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.00 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.225053071975708\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.22 seconds\n",
      "Time taken to find frequent patterns:  4.2659971714019775\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.08 seconds\n",
      "Total time running relim: 1.24 seconds\n",
      "Time taken to find frequent patterns:  4.322039365768433\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.36 seconds\n",
      "Total time running relim: 1.37 seconds\n",
      "Time taken to find frequent patterns:  4.734034538269043\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.30 seconds\n",
      "Total time running relim: 1.21 seconds\n",
      "Time taken to find frequent patterns:  4.510032415390015\n",
      "# of freq itemsets: 82\n",
      "Total time running get_relim_input: 3.05 seconds\n",
      "Total time running relim: 1.26 seconds\n",
      "Time taken to find frequent patterns:  4.308011531829834\n",
      "# of freq itemsets: 82\n",
      "time_selim_avg:  4.388727164268493\n",
      "minsup:  0.18000000000000002\n",
      "Total time running get_relim_input: 5.76 seconds\n",
      "Total time running relim: 1.39 seconds\n",
      "Time taken to find frequent patterns:  7.14067816734314\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.04 seconds\n",
      "Total time running relim: 1.28 seconds\n",
      "Time taken to find frequent patterns:  4.322041034698486\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.38 seconds\n",
      "Total time running relim: 3.91 seconds\n",
      "Time taken to find frequent patterns:  7.297987461090088\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 6.33 seconds\n",
      "Total time running relim: 1.80 seconds\n",
      "Time taken to find frequent patterns:  8.139383316040039\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.54 seconds\n",
      "Total time running relim: 1.57 seconds\n",
      "Time taken to find frequent patterns:  5.110057353973389\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.62 seconds\n",
      "Total time running relim: 1.50 seconds\n",
      "Time taken to find frequent patterns:  5.121000289916992\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.79 seconds\n",
      "Total time running relim: 1.57 seconds\n",
      "Time taken to find frequent patterns:  5.363041162490845\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 4.08 seconds\n",
      "Total time running relim: 1.44 seconds\n",
      "Time taken to find frequent patterns:  5.519996881484985\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.57 seconds\n",
      "Total time running relim: 1.21 seconds\n",
      "Time taken to find frequent patterns:  4.77899694442749\n",
      "# of freq itemsets: 72\n",
      "Total time running get_relim_input: 3.45 seconds\n",
      "Total time running relim: 1.78 seconds\n",
      "Time taken to find frequent patterns:  5.234036684036255\n",
      "# of freq itemsets: 72\n",
      "time_selim_avg:  5.802721929550171\n",
      "minsup:  0.19\n",
      "Total time running get_relim_input: 3.18 seconds\n",
      "Total time running relim: 1.11 seconds\n",
      "Time taken to find frequent patterns:  4.283008813858032\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.11 seconds\n",
      "Total time running relim: 1.16 seconds\n",
      "Time taken to find frequent patterns:  4.2679643630981445\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.24 seconds\n",
      "Total time running relim: 1.28 seconds\n",
      "Time taken to find frequent patterns:  4.518999814987183\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.10 seconds\n",
      "Total time running relim: 1.09 seconds\n",
      "Time taken to find frequent patterns:  4.190000534057617\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.29 seconds\n",
      "Total time running relim: 1.37 seconds\n",
      "Time taken to find frequent patterns:  4.658937692642212\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.09 seconds\n",
      "Total time running relim: 1.43 seconds\n",
      "Time taken to find frequent patterns:  4.522940397262573\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.45 seconds\n",
      "Total time running relim: 1.45 seconds\n",
      "Time taken to find frequent patterns:  4.904999017715454\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.39 seconds\n",
      "Total time running relim: 1.40 seconds\n",
      "Time taken to find frequent patterns:  4.793999195098877\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.48 seconds\n",
      "Total time running relim: 1.31 seconds\n",
      "Time taken to find frequent patterns:  4.785932779312134\n",
      "# of freq itemsets: 64\n",
      "Total time running get_relim_input: 3.65 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.937999963760376\n",
      "# of freq itemsets: 64\n",
      "time_selim_avg:  4.586478257179261\n",
      "minsup:  0.2\n",
      "Total time running get_relim_input: 3.37 seconds\n",
      "Total time running relim: 1.32 seconds\n",
      "Time taken to find frequent patterns:  4.694020748138428\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.34 seconds\n",
      "Total time running relim: 1.27 seconds\n",
      "Time taken to find frequent patterns:  4.616006135940552\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.53 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.765694856643677\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.22 seconds\n",
      "Total time running relim: 1.30 seconds\n",
      "Time taken to find frequent patterns:  4.521936655044556\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.39 seconds\n",
      "Total time running relim: 1.23 seconds\n",
      "Time taken to find frequent patterns:  4.615063190460205\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.25 seconds\n",
      "Total time running relim: 1.29 seconds\n",
      "Time taken to find frequent patterns:  4.5380353927612305\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.36 seconds\n",
      "Total time running relim: 1.09 seconds\n",
      "Time taken to find frequent patterns:  4.455994606018066\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 4.00 seconds\n",
      "Total time running relim: 1.32 seconds\n",
      "Time taken to find frequent patterns:  5.311934471130371\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.33 seconds\n",
      "Total time running relim: 1.36 seconds\n",
      "Time taken to find frequent patterns:  4.688996315002441\n",
      "# of freq itemsets: 58\n",
      "Total time running get_relim_input: 3.84 seconds\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "  0%|          | 0/20 [41:00<?, ?it/s]"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Total time running relim: 1.24 seconds\n",
      "Time taken to find frequent patterns:  5.077033281326294\n",
      "# of freq itemsets: 58\n",
      "time_selim_avg:  4.728471565246582\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    }
   ],
   "source": [
    "minsup_range_selim = list(np.arange(0.01, 0.21, 0.01))\n",
    "time_selim = []\n",
    "with tqdm(total=len(minsup_range_selim)) as pbar:\n",
    "    for minsup in minsup_range_selim:\n",
    "        print('minsup: ', minsup)\n",
    "        time_selim_avg = 0\n",
    "        for j in range(cal_times):\n",
    "            time_selim_avg += get_selim_time(data_set, min_support=minsup)\n",
    "        time_selim_avg /= cal_times\n",
    "        time_selim.append(time_selim_avg)\n",
    "        print('time_selim_avg: ', time_selim_avg)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 46,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[21.199399000000003, 18.042839, 15.969569099999998, 13.234399499999999, 11.6875892, 10.608427800000001, 9.0675848, 8.7449838, 6.622738099999999, 6.334338799999999, 5.9421699, 5.4986369999999996, 5.5834341]\n",
      "[23.0254945, 15.559154000000001, 13.666261600000002, 11.4372262, 11.8696593, 10.3700595, 9.1480486, 7.066901800000001, 6.3867088999999995, 6.442966299999999, 4.759300400000001, 5.6250393999999995, 3.0191001, 2.7110019999999997, 3.1110982, 2.9779035, 2.8249929000000003, 3.7234263, 3.3767623, 4.9637028999999995]\n",
      "[15.18085162639618, 8.538284039497375, 7.480483937263489, 6.822080111503601, 6.180743551254272, 5.968602228164673, 5.623408842086792, 5.524094438552856, 5.228692984580993, 5.081104135513305, 4.881010842323303, 4.807807469367981, 4.666621255874634, 4.54389226436615, 4.576102471351623, 4.325200986862183, 4.388727164268493, 5.802721929550171, 4.586478257179261, 4.728471565246582]\n"
     ]
    },
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 900x600 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "print(time_apriori)\n",
    "print(time_fpgrowth)\n",
    "print(time_selim)\n",
    "plt.figure(figsize=(9, 6), dpi=100)\n",
    "plt.plot(minsup_range_apriori[:-1], time_apriori[:-1], label=\"Apriori\")\n",
    "plt.plot(minsup_range_fpgrowth[:-1], time_fpgrowth[:-1], label=\"FP-Growth\")\n",
    "plt.plot(minsup_range_selim[:-1], time_selim[:-1], label=\"Selim\")\n",
    "plt.xlabel(\"Minimum Support\")\n",
    "plt.ylabel(\"Time (s)\")\n",
    "plt.legend()\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3.9.7 ('dev')",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.7"
  },
  "orig_nbformat": 4,
  "vscode": {
   "interpreter": {
    "hash": "8bc6553f3143ac8e02a348a3e3aab56845d6eb42048bcdd522d03f54fec4a005"
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
